ARTICLE IN PRESS European Journal of Operational Research xxx (2006) xxx–xxx www.elsevier.com/locate/ejor Stochastics and Statistics Multi-objective time–cost trade-off in dynamic PERT networks using an interactive approach Amir Azaron a a,* , Reza Tavakkoli-Moghaddam b Department of Computer Science, Cork Constraint Computation Centre, University College Cork, Cork, Ireland b Department of Industrial Engineering, Faculty of Engineering, University of Tehran, Tehran, Iran Received 23 August 2005; accepted 13 May 2006 Abstract We develop a multi-objective model for the time–cost trade-off problem in a dynamic PERT network using an interactive approach. The activity durations are exponentially distributed random variables and the new projects are generated according to a renewal process and share the same facilities. Thus, these projects cannot be analyzed independently. This dynamic PERT network is represented as a network of queues, where the service times represent the durations of the corresponding activities and the arrival stream to each node follows a renewal process. At the first stage, we transform the dynamic PERT network into a proper stochastic network and then compute the project completion time distribution by constructing a continuous-time Markov chain. At the second stage, the time–cost trade-off problem is formulated as a multi-objective optimal control problem that involves four conflicting objective functions. Then, the STEM method is used to solve a discrete-time approximation of the original problem. Finally, the proposed methodology is extended to the generalized Erlang activity durations. Ó 2006 Elsevier B.V. All rights reserved. Keywords: Multiple objective programming; Queueing; Project management and scheduling; Markov processes; Optimal control 1. Introduction Although project scheduling and management is investigated by many researchers one cannot find many models regarding dynamic project scheduling in the literature. Actually, as the classical definition of project indicates, it is a one-time job which consists of several activities. Therefore, the models representing the project scheduling are static. In reality, during the implementation of a project some new projects are generated, in which the activities associated with successive projects contend for resources. In this paper, we develop a multi-objective model for the time–cost trade-off problem in a dynamic PERT network. In fact, in real world, there are many jobs with similar structure of activities sharing the same facilities. We consider service centers serving various projects with the same structure. Thus, although each one * Corresponding author. Tel.: +353 21 4255420; fax: +353 21 4255424. E-mail addresses: [email protected], [email protected] (A. Azaron). 0377-2217/$ - see front matter Ó 2006 Elsevier B.V. All rights reserved. doi:10.1016/j.ejor.2006.05.014 ARTICLE IN PRESS 2 A. Azaron, R. Tavakkoli-Moghaddam / European Journal of Operational Research xxx (2006) xxx–xxx acts individually as a project represented as a classical PERT network, they cannot be analyzed independently since they share the same facilities. Like every other PERT project, the completion time is stochastic since the processing time of each activity is random. This research can cover projects in the building construction, when creating and building similar successive installations along the time horizon. Since the late 1950s, critical path method (CPM) techniques have become widely recognized as valuable tools for the planning and scheduling of large projects. In a traditional CPM analysis, the major objective is to schedule a project assuming deterministic durations. However, project activities must be scheduled under available resources, such as crew sizes, equipment and materials. The activity duration can be looked upon as a function of resource availability. Moreover, different resource combinations have their own costs. Ultimately, the schedule needs to take account of the trade-off between project direct cost and project completion time. For example, using more productive equipment or hiring more workers may save time, but the project direct cost could increase. In CPM networks, activity duration is viewed either as a function of cost or as a function of resources committed to it. The well-known time–cost trade-off problem (TCTP) in CPM networks takes the former view. In the TCTP, the objective is to determine the duration of each activity in order to achieve the minimum total direct and indirect costs of the project. Studies on TCTP have been done using various kinds of cost functions such as linear [13,25], discrete [10], convex [27,7], and concave [12]. When the cost functions are arbitrary (still non-increasing), dynamic programming (DP) approach was suggested by Robinson [30] and Elmaghraby [11]. Tavares [33] has presented a general model based on the decomposition of the project into a sequence of stages and the optimal solution can be easily computed for each practical problem as it is shown for a real case study. Dynamic programming was also applied to solve the deterministic discrete time–cost trade-off problem in particular networks of medium size by Panagiotakopoulos [29]. Original results on optimization of allocation of the resources for network projects with deterministic activities can also be found in numerous publications like Shtub et al. [32] and Deckro and Hebert [9]. Weglarz [34] studied this problem using optimal control theory and assumed that the processing speed of each activity at time t is a continuous, non-decreasing function of the amount of resource allocated to the activity at that instant of time. This means that time is considered as a continuous variable. All above papers consider fixed activity durations and do not consider stochastic projects of random durations. A less extensive literature exists on the planning and scheduling of projects with stochastic activity durations. Arsham [2] constructed a linear programming (LP) formulation to find the critical path of PERT networks by estimating a time for each activity duration. Kulkarni and Adlakha [26] developed a continuous-time Markov process approach to PERT problems with independent and exponentially distributed activity durations. However, these methods are not dealing with time–cost trade-off problem. Arisawa and Elmaghraby [1] developed an analytical approach for the problem of optimal time–cost tradeoff in GERT networks, in which not only the duration of each activity is a random variable but also its existence is a chance event. This approach leads to a mathematical program, in which the objective is the maximization of the marginal reduction in duration per unit of investment. Azaron et al. [3] proposed an approximation technique to deal with time–cost trade-off in classical PERT networks, using the surrogate worth trade-off method. Golenko-Ginzburg and Gonik [14] presented a heuristic algorithm for resource constrained project scheduling in a PERT type project. The problem is to determine starting time values for each activity entering the project. Solving a zero-one integer programming problem at each decision point results in the following policy: the project management takes all measures to first operate those activities that, being realized, have the greatest effect of decreasing the expected project duration. Golenko-Ginzburg et al. [15] developed a heuristic approach for planning and supervising one or more stochastic PERT networks, in order to control several kinds of resources including rare and expensive ones transported from outside for a short time. The minimal non-operational costs are the problem target function. Golenko-Ginzburg and Gonik [16] developed planning and control techniques for a three-level decisionmaking model comprising several stochastic network projects, including PERT, GERT and CAAN networks [17], with various alternative outcomes and different priorities. This is an off-line control technique. Golenko- ARTICLE IN PRESS A. Azaron, R. Tavakkoli-Moghaddam / European Journal of Operational Research xxx (2006) xxx–xxx 3 Ginzburg and Gonik [18] developed a hierarchical on-line control model for several PERT type projects being realized simultaneously. This model has two objectives: to minimize the number of control points and to maximize the probability that the slowest project can meet its due date on time. The paper by Golenko-Ginzburg and Gonik [19] is a further development of [18], which is applied to projects with variable speeds like building projects. To speed up the model’s performance, Golenko-Ginzburg and Gonik [20] presented an on-line heuristic control algorithm, in which the timing of inspection points does not comprise intermediate check-points and is based on the behavior of a risk averse decision-maker (DM). This paper is a further development of [18,19]. Golenko-Ginzburg et al. [21] developed a heuristic approach to determine both control points and speeds to be introduced at those points, in order to minimize the production system’s expenses within the planning horizon. Golenko-Ginzburg and Gonik [22] developed a heuristic method for the stochastic extension of the CPM TCTP model, which takes into account the chance element of time, yet ignores the possible difference between the actual cost and the pre-given budget. Laslo [28] developed some formulations of TCTP models that represent different assumptions of the effect of the changing performance speed on the frequency distribution parameters of the activity duration, as well as the effect of the random activity duration on the activity cost. Recently, some researchers have adopted computational optimization techniques such as genetic algorithms to solve TCTP. Chau et al. [8] and Azaron et al. [4] proposed models using genetic algorithms and the Pareto front approach to solve construction time–cost trade-off problems. The above stochastic models are all static in sense that the number of projects, which is considered in the model, is either one like Arisawa and Elmaghraby [1], Azaron et al. [3,4], Laslo [28] and Golenko-Ginzburg et al. [14,19–22] or a fixed number of PERT type projects being realized simultaneously at the beginning of each algorithm like Golenko-Ginzburg et al. [15–18], but in our proposed model projects are generated consecutively according to a renewal process, which is the main contribution of our paper. The existing models are mainly appropriate to plan and control R&D projects and long-term projects when designing or developing new industrial or populated areas, but our proposed model is appropriate in the building construction, when creating and building similar successive installations along the time horizon. Most of regarded sources use heuristic approaches like Arsham [2] and Golenko-Ginzburg et al. [14–22], based on simulation, to solve the problem, but we use discrete-time approximation technique, which is proved to approach the optimal solution. Finally, the proposed model is the first, which tries to solve the TCTP in a PERT network by modelling it as a queueing network. Dynamic PERT does not take into account the time–cost trade-off, analytically. Therefore, combining the aforementioned concepts to develop a time–cost trade-off model under uncertainty and dynamic situations would be beneficial to scheduling engineers in forecasting a more realistic project completion time and cost. Each dynamic PERT network is represented as a network of queues. In each node of this network a dedicated service station is settled. The number of servers in each service station is assumed to be either one or infinity. The service times (activity durations) are exponentially distributed. On the other hand, projects, including all their activities, are generated according to a Poisson process with the generation rate of k (this assumption is then extended to renewal process). All projects have the same activities and the same sequences. A project is represented as an Activity-on-Node (AoN) graph. Each activity of the project is processed in a specified service station, located in a node of this network. The activities associated with successive projects are processed on a FCFS basis and wait in a queue if that particular server is busy with the previous jobs. An activity begins as soon as all its predecessor activities of that job are finished, as well as the associated service station has processed the same activity of the previous jobs. Our methodology is based on transforming the dynamic PERT network into an equivalent classical PERT network. To do that each node is replaced with a stochastic arc (activity) whose length is equal to the time spent in the corresponding service station. Then, the distribution function of the longest path length in the equivalent PERT network is computed by modeling it as a continuous-time Markov process. Azaron et al. [5] briefly mentioned to this problem in Markov dynamic PERT networks as one of the potential applications of the longest path analysis in networks of queues. In this paper, we first extend [5] to non-Markov dynamic PERT networks. Then, we develop a multi-objective model for the time–cost tradeoff problem in dynamic PERT networks by extending the work of Azaron et al. [3] to dynamic conditions and using a new multi-objective interactive technique. ARTICLE IN PRESS 4 A. Azaron, R. Tavakkoli-Moghaddam / European Journal of Operational Research xxx (2006) xxx–xxx The decision variables of the proposed model are allocated resource quantities. It is assumed that the time spent in each service station (activity duration plus waiting time in queue) is a non-increasing function of the resources allocated to it. The direct cost of each activity is also assumed to be a non-decreasing function of the amount of resource allocated to it. The problem is formulated as a multi-objective optimal control problem, in which the objective functions are the project direct cost (to be minimized), the mean of the project completion time (min), its variance (min) and the probability that the project completion time does not exceed a given level (max). Finally, we use the STEM method, which is an interactive approach with implicit trade-off information given, to solve this multiobjective problem. This paper is organized as follows. In Section 2, we compute the project completion time distribution in Markov dynamic PERT networks, analytically. Section 3 presents the multi-objective resource allocation formulation. In Section 4, we explain about the application of STEM method to solve the problem. In Section 5, the proposed methodology is generalized. Section 6 presents the computational experiments. Finally, we draw the conclusion of the paper in Section 7. 2. Project completion time distribution in Markov dynamic PERT networks In this section, we present an analytical method to compute the distribution function of the project completion time in a dynamic PERT network. It is assumed that the new projects, including all their activities, are generated according to a Poisson process with the rate of k. Each activity is processed at a dedicated service station settled in a node of the network. The activities associated with successive projects contend for resources on a FCFS basis. This dynamic PERT network can be represented as a network of queues, where the service times represent the durations of the corresponding activities and the arrival stream to each node follows a Poisson process with the rate of k. Moreover, the arc lengths are all equal zero. The number of servers in each service station is assumed to be either one or infinity, while the service times (activity durations) are exponentially distributed. The density function of time spent in a service station depends on the queueing structure of that station. As mentioned before, the arrivals are according to a Poisson process and service times are exponentially distributed. Thus, each cell acts as an exponential queueing system (or M/M/. . . model). Therefore, the main steps of our proposed method are as follows: Step 1. Compute the density function of the time spent in each service station. Step 1.1. If there is one server in the service station settled in the ith node, then the density function of time spent (activity duration plus waiting time in queue) in this M/M/1 queueing system is wi ðtÞ ¼ ðli kÞeðli kÞt t > 0; ð1Þ where k and li are the generation rate of new projects and the service rate of this queueing system, respectively. Therefore, the distribution of time spent in this service station would be exponential with parameter (li k). Step 1.2. If there are infinite number of servers in the service station settled in the ith node, then the time spent in this M/M/1 queueing system would be exponentially distributed with parameter li, because there is no queue. Step 2. Transform the dynamic PERT network into an equivalent classical PERT network represented as an Activity-on-Arc (AoA) graph. Step 2.1. Replace each node with a stochastic arc (activity) whose length is equal to the time spent in the particular service station. Let us explain how to replace node k in the network of queues with a stochastic activity. Assume that b1, b2, . . . , bn are the incoming arcs to this node and d1, d2, . . . , dm are the outgoing arcs from it. Then, we substitute this node by activity (k 0 , k00 ), whose length is equal to the time spent in the corresponding queueing system. Furthermore, all arcs bi for i = 1, . . . , n end up with k 0 while all arcs dj for j = 1, . . . , m start from node k00 . The indicated process is opposite of the absorption an edge e in a graph G in graph theory (G.e), see [6] for more details. ARTICLE IN PRESS A. Azaron, R. Tavakkoli-Moghaddam / European Journal of Operational Research xxx (2006) xxx–xxx 5 Step 2.2. Eliminate all arcs with zero length. Step 3. Compute the distribution function of the longest path length in the classical PERT network with exponentially distributed activity durations obtained in Step 2.2. Any analytical method dealing with the computation of project completion time distribution in classic PERT networks with exponentially distributed activity durations can be used in Step 3. We use the method of Kulkarni and Adlakha [26] in this step, because this method is an analytical one, simple, easy to implement on a computer and computationally stable. Let G = (V, A) be the transformed classical PERT network with set of nodes V = {v1, v2, . . . , vm} and set of activities A = {a1, a2, . . . , an}. The source and sink nodes are denoted by s and y, respectively. Length of arc a 2 A is an exponentially distributed random variable with parameter ca. For a 2 A, let a (a) be the starting node of arc a, and b(a) be the ending node of arc a. Definition 1. Let I(v) and O(v) be the sets of arcs ending and starting at node v, respectively, which are defined as follows: IðvÞ ¼ fa 2 A : bðaÞ ¼ vg ðv 2 V Þ; ð2Þ OðvÞ ¼ fa 2 A : aðaÞ ¼ vg ðv 2 V Þ: ð3Þ Definition 2. If X V such that s 2 X and y 2 X ¼ V X , then an (s,y) cut is defined as: ðX ; X Þ ¼ fa 2 A : aðaÞ 2 X ; bðaÞ 2 X g: ð4Þ An (s, y) cut ðX ; X Þ is called a uniformly directed cut (UDC), if ðX ; X Þ is empty. Example 1. Before proceeding, we illustrate the material by an example. Consider the network shown in Fig. 1. Clearly, (1, 2) is a uniformly directed cut (UDC) because V is divided into two disjoint subsets X and X , where s 2 X and y 2 X . The other UDCs of this network are (2, 3), (1, 4, 6), (3, 4, 6) and (5, 6). Definition 3. Let D = E [ F be a uniformly directed cut (UDC) of the network. Then, it is called an admissible 2-partition, if for any a 2 F, we have I(b(a)) 6 F. To illustrate this definition, consider Example 1 again. As mentioned, (3, 4, 6) is a UDC. This cut can be divided into two subsets E and F. For example, E = {4} and F = {3, 6}. In this case, the cut is an admissible 2partition, because I(b(3)) = {3, 4} 6 F and also I(b(6)) = {5, 6} 6 F. However, if E = {6} and F = {3, 4}, then the cut is not an admissible 2-partition, because I(b (3)) = {3, 4} F = {3, 4}. Definition 4. During the project execution and at time t, each activity can be in one of the active, dormant or idle states, which are defined as follows: (i) Active: an activity is active at time t, if it is being executed at time t. (ii) Dormant: an activity is dormant at time t, if it has finished but there is at least one unfinished activity in I(b(a)). If an activity is dormant at time t, then its successor activities in O(b(a)) cannot begin. (iii) Idle: an activity is idle at time t, if it is neither active nor dormant at time t. Fig. 1. The example network. ARTICLE IN PRESS 6 A. Azaron, R. Tavakkoli-Moghaddam / European Journal of Operational Research xxx (2006) xxx–xxx The sets of active and dormant activities are denoted by Y(t) and Z(t), respectively, and X(t) = (Y(t), Z(t)). Consider Example 1 again. If activity 3 is dormant, it means that this activity has finished but the next activity, i.e. 5, cannot begin because activity 4 is still active. Table 1 presents all admissible 2-partition cuts of this network. We use a superscript star to denote a dormant activity. All others are active. E contains all active while F includes all dormant activities. Let S denote the set of all admissible 2-partition cuts of the network, and S ¼ S [ fð/; /Þg. Note that X(t) = (/, /) implies that Y(t) = / and Z(t) = /, i.e. all activities are idle at time t and hence the project is completed by time t. It is proven that {X(t), t P 0} is a continuous-time Markov process with state space S, refer to [26] for details. As mentioned, E and F contain active and dormant activities of a UDC, respectively. When activity a finishes (with the rate of ka), and there is at least one unfinished activity in I(b(a)), it moves from E to a new dormant activities set, i.e. to F 0 . Furthermore, if by finishing this activity, its succeeding ones, O(b(a)), become active, then this set will also be included in the new E 0 , while the elements of I(b(a)), which one of them belongs to E and the other ones belong to F, will be deleted from the corresponding sets. Thus, the elements of the infinitesimal generator matrix Q = [q{(E, F), (E 0 , F 0 )}], (E,F) and ðE0 ; F 0 Þ 2 S are as follows: 8 ca if a 2 E; IðbðaÞÞ 6 F [ fag; E0 ¼ E fag; F 0 ¼ F [ fag; ðaÞ > > > >c > if a 2 E; IðbðaÞÞ F [ fag; E0 ¼ ðE fagÞ [ OðbðaÞÞ; > a > < F 0 ¼ F IðbðaÞÞ; ðbÞ ð5Þ qfðE; F Þ; ðE0 ; F 0 Þg ¼ X > 0 0 > c if E ¼ E; F ¼ F ; ðcÞ > a > > > a2E > : 0 otherwise: ðdÞ In Example 1, if we consider E = {1, 2}, F = (/), E 0 = {2, 3} and F 0 = (/), then E 0 = (E {1}) [ O(b(1)), and thus from 5(b), q{(E, F), (E 0 , F 0 )} = c1. {X(t), t P 0} is a finite-state absorbing continuous-time Markov process and since q{(/, /), (/, /)} = 0, it is concluded that this state is an absorbing one and obviously the other states are transient. Furthermore, we number the states in S such this Q matrix be an upper triangular one. We assume that the states are numbered 1; 2; . . . ; N ¼j S j. State 1 is the initial state, namely X(t) = (O(s), /), and state N is the absorbing state, namely X(t) = (/, /). Let T represent the length of the longest path in the network, or the project completion time in the PERT network. Clearly, T = min {t > 0 : X(t) = N/X(0) = 1}. Thus, T is the time until {X(t), t P 0} gets absorbed in the final state starting from state 1. Chapman–Kolmogorov backward equations can be applied to compute F(t) = P{T 6 t}. If we define P i ðtÞ ¼ P fX ðtÞ ¼ N =X ð0Þ ¼ ig; i ¼ 1; 2; . . . ; N ; ð6Þ then F(t) = P1(t). The system of linear differential equations for the vector P(t) = [P1(t), P2(t), . . . , PN(t)]T is given by P 0 ðtÞ ¼ QP ðtÞ; ð7Þ T P ð0Þ ¼ ½0; 0; . . . ; 1 ; where P 0 (t) represents the derivation of the state vector P(t) and Q is the infinitesimal generator matrix of the stochastic process {X(t), t P 0}. In Section 3, we obtain the approximated discrete project completion time distribution. Table 1 All admissible 2-partition cuts of the example network 1. 2. 3. 4. (1, 2) (2, 3) (2, 3*) (1, 4, 6) 5. 6. 7. 8. (1, 4*, 6) (1, 4, 6*) (1, 4*, 6*) (3, 4, 6) 9. 10. 11. 12. (3*, 4, 6) (3, 4*, 6) (3, 4, 6*) (3*, 4, 6*) 13. 14. 15. 16. (3, 4*, 6*) (5, 6) (5*, 6) (5, 6*) 17. (/, /) ARTICLE IN PRESS A. Azaron, R. Tavakkoli-Moghaddam / European Journal of Operational Research xxx (2006) xxx–xxx 7 3. Multi-objective resource allocation problem In this section, we develop a multi-objective model to optimally control the resources allocated to the activities in a dynamic PERT network, representing as a network of queues, where the mean time spent in each service station is a non-increasing function and the direct cost of each activity is a non-decreasing function of the amount of resource allocated to it. We may decrease the project direct cost, by decreasing the amount of resource allocated to the activities. However, clearly it causes the mean project completion time to be increased, because these objectives are in conflict with each other. Consequently, an appropriate trade-off between the total direct costs and the mean project completion time is required. The variance of the project completion time should also be considered in the model, because when we only focus on the mean time, the resource quantities may be non-optimal if the project completion time substantially varies because of randomness. Interpretation of the variance of project completion time is very difficult in application and consequently we need another proper deterministic objective associated with the minimization of project completion time, which has a random nature. This new objective would be the probability that the project completion time does not exceed a certain threshold. Therefore, we have a multi-objective stochastic programming problem. The objective functions are the project direct cost (to be minimized), the mean of project completion time (min), the variance of project completion time (min) and the probability that the project completion time does not exceed a certain threshold (max). The direct cost of activity a 2 A in the transformed classical PERT network is assumed to be a non-decreasing function da(xa) of Pthe amount of resource xa allocated to it. Therefore, the project direct cost (PDC) would be equal to PDC ¼ a2A d a ðxa Þ. The mean time spent in the service station a is assumed to be a non-increasing function ga(xa) of the amount of resource xa allocated to it. As explained in Section 2, the mean time spent would be equal to la1k, if there is one server, and is equal to l1a , if there are infinite number of servers in the corresponding service station. Let Ua represent the amount of resource available to be allocated to the activity a, and La represent the minimum amount of resource required to achieve the activity a. In reality da(xa) and ga(xa) can be estimated using linear regression. We can collect sample paired data of da(xa) and ga (xa) as the dependent variables, for different values of xa as the independent variables, from the previous similar activities or using the judgments of experts in this area. Then, we can estimate the parameters of the relevant linear regression models. The mean and the variance of project completion time are given by Z 1 Z 1 EðT Þ ¼ ð1 P 1 ðtÞÞ dt ¼ tP 01 ðtÞ dt; ð8Þ 0 VarðT Þ ¼ Z 1 t 2 P 01 ðtÞ dt 0 Z 0 1 tP 01 ðtÞ dt 2 ð9Þ ; 0 where P 01 ðtÞ is the density function of project completion time. The probability that the project completion time does not exceed a given threshold u is P ðT 6 uÞ ¼ P 1 ðuÞ: ð10Þ T The infinitesimal generator matrix Q would be a function of the control vector l = [la; a 2 A] . Therefore, the non-linear dynamic model is P 0 ðtÞ ¼ QðlÞP ðtÞ; P i ð0Þ ¼ 0 8i ¼ 1; 2; . . . ; N 1; P N ðtÞ ¼ 1: ð11Þ Representing B as the set of nodes including M/M/1 service stations and C as the set of nodes including M/M/1 service stations in the original dynamic PERT network (A = (B [ C)), the relations (12) should be satisfied to exist the response in the steady-state. la > k a 2 B; la > 0 a 2 C: ð12Þ ARTICLE IN PRESS 8 A. Azaron, R. Tavakkoli-Moghaddam / European Journal of Operational Research xxx (2006) xxx–xxx We do not have such constraints in the mathematical programming. Therefore, we use the constraints (13) instead of (12) in the final multi-objective problem. la P k þ e la P e a 2 B; ð13Þ a 2 C: Accordingly, the appropriate multi-objective optimal control problem is X Min f 1 ðxÞ ¼ d a ðxa Þ; a2A 1 Min f 2 ðxÞ ¼ Z ð1 P 1 ðtÞÞ dt; 0 Min f 3 ðxÞ ¼ Z 1 t2 P 01 ðtÞ dt Z 0 Max s:t: 1 2 tP 01 ðtÞ dt ; 0 f 4 ðxÞ ¼ P 1 ðuÞ P 0 ðtÞ ¼ QðlÞP ðtÞ; P i ð0Þ ¼ 0; 8i ¼ 1; 2; . . . ; N 1; P N ðtÞ ¼ 1; ð14Þ 1 ; a 2 B; la k 1 ga ðxa Þ ¼ ; a 2 C; la la P k þ e; a 2 B; ga ðxa Þ ¼ la P e; a 2 C; xa 6 U a ; a 2 A; xa P La ; a 2 A: A possible approach to solving (14) to optimality is to use the Maximum Principle (see [31] R 1for details). For simplicity, consider solving the problem with only one of the objective functions, f2 ðxÞ ¼ 0 ð1 P 1 ðtÞÞ dt. 1 1 1 Clearly xa ¼ g1 a ðla kÞ for a 2 B and xa ¼ g a ðla Þ for a 2 C. Therefore, we can consider l as the unique independent control vector of the problem, in which x = [xa; a 2 A]T is dependent to it. Consider K as the set of allowable controls consisting of all constraints except the constraints representing the dynamic model (l 2 K), and N-vector k(t) as the adjoint vector function. Then, Hamiltonian function would be T H ðkðtÞ; P ðtÞ; lÞ ¼ kðtÞ QðlÞP ðtÞ þ 1 P 1 ðtÞ: ð15Þ Now, we write the adjoint equations and terminal conditions, which are k0 ðtÞT ¼ kðtÞT QðlÞ þ ½1; 0; . . . ; 0; kðT ÞT ¼ 0; T ! 1: ð16Þ If we could compute k(t) from (16), then we would be able to minimize the Hamiltonian function subject to l 2 K in order to get the optimal control l* and to solve the problem optimally. Unfortunately, the adjoint Eq. (16) are dependent on the unknown control vector l and therefore they cannot be solved directly. If we could also minimize the Hamiltonian function (15), subject to l 2 K, for an optimal control function in closed form as l* = f(P*(t), k*(t)), then we would be able to substitute this into the state equations, P 0 (t) = Q(l)P(t), P(0) = [0, 0, . . . , 1]T, and adjoint Eq. (16) to get a set of differential equations, which is a two-point boundary value problem. Unfortunately, we cannot obtain l* by differentiating H with respect to l, because the minimum of H occurs on the boundary of K, and consequently l* cannot be obtained in a closed form. According to these points, it is impossible to solve the optimal control problem (14), optimally, even in the restricted case of a single objective problem. Relatively few optimal control problems can be solved optimally. ARTICLE IN PRESS A. Azaron, R. Tavakkoli-Moghaddam / European Journal of Operational Research xxx (2006) xxx–xxx 9 Therefore, we do the discretization of time and convert the optimal control problem (14) into an equivalent non-linear programming one. In other words, we transform the differential equations into equivalent difference equations as well as transform the integral terms into equivalent summation terms. To follow this approach, the time interval is divided into K equal portions with the length of Dt. If Dt is sufficiently small, it can be assumed that P(t) varies only in times 0, Dt, . . . , (K 1)Dt. Since each Pi(k), for i = 1, 2, . . . , N 1, k = 1, 2, . . . , K, is a distribution function, then the constraints (17) should also be considered in the final discrete-time problem (refer to [3] for more details about the proposed technique). P i ðkÞ 6 1 i ¼ 1; 2; . . . ; N 1; k ¼ 1; 2; . . . ; K: ð17Þ Theoretically, when K approaches to infinity and Dt approaches to zero, the optimal results of the original problem will be obtained, but in this case the computational time also approaches to infinity, which is not practical in reality. Practically, we should select a finite value for K. An accurate solution should posses this property that P1(K) approaches 1. If a solution does not have the mentioned property, the value of Dt is increased in order to satisfy this necessary condition. Considering ½Dtu as the integer part of Dtu , the appropriate multi-objective non-linear optimization problem would be X Min f 1 ðxÞ ¼ d a ðxa Þ; ð18aÞ a2A Min f 2 ðxÞ ¼ K 1 X kDtðP 1 ðk þ 1Þ P 1 ðkÞÞ; k¼0 Min f 3 ðxÞ ¼ K 1 X " 2 ðkDtÞ ðP 1 ðk þ 1Þ P 1 ðkÞÞ k¼0 Max s:t: f 4 ðxÞ ¼ P 1 h u i Dt P ðk þ 1Þ ¼ P ðkÞ þ QðlÞP ðkÞDt; P i ð0Þ ¼ 0; i ¼ 1; 2; . . . ; N 1; P N ðkÞ ¼ 1; P i ðkÞ 6 1; ð18bÞ K 1 X #2 kDtðP 1 ðk þ 1Þ P 1 ðkÞÞ ; ð18dÞ k ¼ 0; 1; . . . ; K 1; ð18eÞ ð18fÞ k ¼ 1; 2; . . . ; K; ð18hÞ k ¼ 0; 1; . . . ; K; i ¼ 1; 2; . . . ; N 1; 1 ; a 2 B; la k 1 ga ðxa Þ ¼ ; a 2 C; la la P k þ e; a 2 B; la P e; a 2 C; ga ðxa Þ ¼ ð18cÞ k¼0 ð18gÞ ð18iÞ ð18jÞ ð18kÞ ð18lÞ xa 6 U a ; a 2 A; ð18mÞ xa P La ; a 2 A: ð18nÞ After solving the optimization problem (18) and obtaining l*, we compute P1(t) by solving the system of differential equations with constant coefficients (7), analytically. Then, we compute the exact mean and the variance of the project completion time from (8) and (9), respectively. The percentage difference between the approximated mean taken from (18b) and the exact mean taken from (8), PD.M, and also the percentage difference between the approximated variance taken from (18c) and the exact variance taken from (9), PD.V, or the absolute differences between the approximated values and the exact values divided by the exact ones can be considered as two important criteria for the accuracy of the discrete-time approximated solution. As K is increased and Dt is decreased, PD.M and PD.V approach zero. Therefore, the approximated discrete project completion time distribution approaches to the exact continuous distribution, because of matching the first two moments, and consequently, the optimal solution of the discrete-time problem (18) approaches to that of the original optimal control problem (14). ARTICLE IN PRESS 10 A. Azaron, R. Tavakkoli-Moghaddam / European Journal of Operational Research xxx (2006) xxx–xxx In order to investigate the trade-off between optimality and computational time, we consider K = 10 at the beginning of the algorithm. In the next steps of the algorithm, we replace K with K + 10. Each new value for Dt should also be selected, such that the length of the time interval ( Tb ¼ KDtÞ remains unchanged and P1(K) approaches 1. 4. STEM method For solving the multi-objective non-linear programming (18) we use the STEM method, see [24], which is an interactive approach with implicit trade-off information given. STEM allows the DM to learn to recognize good solutions and the relative importance of the objectives. In the method, phases of computation alternate (interactively) with phases of decision. The major steps in the STEM method to solve the multi-objective problem (18) are Step 0. Construction of a pay-off table: A pay-off table is constructed before the first interactive cycle. Let fj , j = 1, 2, 3, 4, be feasible ideal solutions of the following four problems: Min f j ðxÞ; j ¼ 1; 2; 3; Max f 4 ðxÞ s:t: x 2 S ðfeasible region of problem ð18ÞÞ: ð19Þ In the pay-off table, row j corresponds to the solution vector x*, which optimizes the objective function fj. A zij is the value taken on by the ith objective fi when the jth objective fj reaches its optimum fj . Step 1. Calculation phase: At the mth cycle, the feasible solution to the problem (20) is sought, which is the ‘‘nearest’’, in the MINIMAX sense, to the ideal solution fj : Min s:t: c c P ðfj ðxÞ fj Þ pj ; j ¼ 1; 2; 3; ðf4 m cP f4 ðxÞÞ p4 ; x2X ; ð20Þ c P 0; where Xm includes S plus any constraint added in the previous (m 1) cycles; pj gives the relative importance of the distances to the optima. Let us consider the jth column of the pay-off table. Let fjmax and fjmin be the maximum and minimum values; then pj, j = 1, 2, 3, 4, are chosen such that aj pj ¼ P ; ð21Þ ai where aj ¼ i fjmax fjmin fjmax . From the above equations, we conclude that if the value of fj does not vary much from the optimum solution by varying x, the corresponding objective is not sensitive to a variation in the weighting values; therefore, a small weight pj can be assigned to this objective function. Step 2. Decision phase: The compromise solution xm is presented to the DM. If some of the objectives are satisfactory and others are not, the DM relaxes a satisfactory objective fjm enough to allow an improvement of the unsatisfactory objectives in the next iterative cycle. The DM gives Dfj as the amount of acceptable relaxation. Then, for the next cycle the feasible region is modified as 8 m > <X ; mþ1 X ¼ fj ðxÞ 6 fj ðxm Þ þ Dfj ; if j ¼ 1; 2; 3; f j ðxÞ P fj ðxm Þ Dfj ; if j ¼ 4; ð22Þ > : m m fi ðxÞ 6 fi ðx Þ; if i ¼ 1; 2; 3; i 6¼ j; f i ðxÞ P fi ðx Þ; if i ¼ 4; i 6¼ j: The weight pj is set to zero and the calculation phase of cycle m + 1 begins. ARTICLE IN PRESS A. Azaron, R. Tavakkoli-Moghaddam / European Journal of Operational Research xxx (2006) xxx–xxx 11 5. Project completion time distribution in non-Markov dynamic PERT networks The proposed methodology can be easily generalized. Let the new projects be generated according to a renewal process with the interarrival times distribution A(t), while the number of servers in each service station is equal to one. Letting li as the service rate of the G/M/1 queueing system settled in the ith node, we can compute 0 < x0 < 1 or the unique root of Eq. (23) by using a numerical method like the Newton–Raphson method. Z 1 z¼ eli tð1zÞ dAðtÞ; 0 < z < 1: ð23Þ 0 After computing x0, the distribution of time spent in this G/M/1 queueing system is as follows (see Gross and Harris [23] for details). wi ðtÞ ¼ li ð1 x0 Þeli ð1x0 Þt ; t > 0: ð24Þ Thus, the time spent in this service station is exponentially distributed with parameter li(1 x0). The proposed methodology can also be extended to a special class of activity durations with general distribution. In this case, computing the density function of the time spent is quite complicated. Taking this drawback into account and considering that the proposed approach is suitable for Markovian PERT networks, we need to find an efficient way to adopt this method for computing the project completion time distribution in general dynamic PERT networks. Therefore, we extend the proposed methodology to activity durations with generalized Erlang distribution with parameters l1, l2, . . . , lk (l1 = l2 = = lk = l in an Erlang distribution), but in the heavy traffic condition, which means its utilization factor should approach 1. Moreover, the new projects should be generated according to a Poisson process, in this case. The expected value (c) and the variance (r2) of the waiting time in queue in any M/G/1 queueing system, considering the heavy traffic condition are cDt ¼ ðkEðSÞ 1ÞDt þ oðDtÞ; r2 Dt ¼ kEðS 2 ÞDt þ oðDtÞ; ð25Þ where S and k represent the service time and the arrival rate, respectively. The utilization factor is equal to q = kE(S), which should approach 1. The steady-state density function of the waiting time in queue wq(t) can be approximated by exponential with parameter (2c)/r2 (see [6] for more details). Therefore, 2 wq ðtÞ ¼ ð2cÞ=r2 eð2cÞ=r t ; t > 0: ð26Þ We can also decompose the service time with generalized Erlang distribution into a collection of structured exponentially distributed random variables with parameters li, i = 1, 2, . . . , k. Therefore, node i with an M/GEk/1 queueing system, in heavy traffic condition, is replaced with k + 1 exponential serial arcs with parameters ð2ci Þ=r2i ; li1 ; li2 ; . . . ; lik . Finally, the proposed methodology can be easily adopted to obtain the project completion time distribution and the optimal allocated resource quantities, in these general cases. 6. Numerical example In this section, we solve a numerical example to investigate the performance of the proposed method for the time–cost trade-off in the dynamic PERT network, which is represented as the network of queue depicted in Fig. 2, using the STEM method. The activity durations (service times) are exponentially distributed random variables. Moreover, the new projects, including all their activities, are generated according to a Poisson process with the rate of k = 10 per year. The other assumptions are as follows: 1. There is no service station in node 0. It means that there is no predecessor activity for the activities 1 and 2 of each new project. 2. There is one server in the service stations settled in nodes 1, 2, 3, 6 and 7. 3. There are infinite number of servers in the service stations settled in nodes 4 and 5. ARTICLE IN PRESS 12 A. Azaron, R. Tavakkoli-Moghaddam / European Journal of Operational Research xxx (2006) xxx–xxx λ 0 1 2 4 3 6 7 5 Fig. 2. The dynamic PERT network. The transformed classical PERT network is depicted in Fig. 3. Table 2 shows the characteristics of the activities in the transformed classical PERT network. The structures of functions (different linear and non-linear forms) are selected so as to represent a wide variety of problems encountered in the resource allocation problem in dynamic PERT networks. In real cases, these functions can be estimated using linear or non-linear regression. The cost unit is in thousand dollars, the time is in year and the threshold value is equal to 4 years. The objective is to obtain the optimal allocated resource quantities using the discrete-time approximation technique. The stochastic process {X(t), t P 0} related to the longest path analysis of the classical PERT network has 14 states in the order of S ¼ fð1; 2Þ; ð1; 3Þ; ð1; 5Þ; ð1; 5 Þ; ð2; 4Þ; ð2; 4 Þ; ð3; 4Þ; ð3; 4 Þ; ð4; 5Þ; ð4 ; 5Þ; ð4; 5 Þ; ð6Þ; ð7Þ; ð/; /Þg. Table 3 shows the infinitesimal generator matrix Q(l) (diagonal elements are equal to minus sum of the other elements at the same row). For investigating the trade-off between accuracy and computational time, CT (hh:mm:ss), the following levels of K: K = 10, 20, 30, 40, 50, 80, are considered in our computational experiments. The value of e is also considered equal to 0.01 in all experiments. Moreover, P1(K) should be greater than 0.99. If a solution does not satisfy this property, the value of Dt, corresponding with each level of K, is increased in order to access to this level of accuracy. Thus, the following combinations of K and Dt are considered: (K = 10, Dt = 0.8), (K = 20, Dt = 0.4), (K = 30, Dt = 0.27), (K = 40, Dt = 0.2), (K = 50, Dt = 0.16), (K = 80, Dt = 0.1). Finally, we use LINGO 6 on a PC Pentium IV 2.1 GHz to solve the problem for all combinations of K and Dt. Moreover, the values of PD.M and PD.V are computed in each case to make sense about the accuracy of the discrete-time approximation technique, when K is increased. Table 4 shows the trade-off between accuracy and computational time (before the decision phase). According to this table, computational time grows with K. Moreover, the percentage differences between the approximated mean and variance and the exact values are decreased when K is increased. In the case of K = 80 and Dt = 0.1, which is the most accurate case, the compromise solution is x1 = [1, 1.714, 1, 1.29, 1, 2.229, 1]T. Then, we go to the decision phase and the compromise solution is presented to the DM, who compares its objective vector f 1 ¼ ðf11 ; f21 ; f31 ; f41 Þ ¼ ð30:947; 4:676; 3:137; 0:365Þ with the ideal one, f ¼ ðf1 ; f2 ; f3 ; f4 Þ ¼ ð28; 1:809; 0:431; 0:993Þ. If f11 is satisfactory, but the other objectives are not, the Fig. 3. The transformed classical PERT network. Table 2 Characteristics of the activities a da(xa) ga(xa) La Ua 1 2 3 4 5 6 7 3x21 0.7 0.1x1 1.5 0.2x2 1 0.1x3 1.5 0.3x4 0.9 0.1x5 1.1 0.1x6 1 0.2x7 1 1 1 1 1 1 1 5 6 9 4 5 6 3 þ2 2x2 + 1 x3 + 2 x4 3x5 + 4 x6 + 3 4x7 + 1 ARTICLE IN PRESS A. Azaron, R. Tavakkoli-Moghaddam / European Journal of Operational Research xxx (2006) xxx–xxx 13 Table 3 Matrix Q(l) State 1 2 3 4 5 6 7 8 9 10 11 12 13 14 1 0 0 0 0 0 0 0 0 0 0 0 0 0 2 3 4 5 6 7 8 9 10 11 12 13 14 l2 10 0 l3 10 0 0 l5 l1 10 0 0 0 0 0 0 0 l4 0 l1 10 0 0 l2 10 0 0 0 0 0 0 l2 10 l4 0 0 l1 10 0 0 0 l3 10 0 0 0 0 0 0 0 0 l3 10 l4 0 0 0 l1 10 0 0 0 0 l5 0 0 0 0 0 0 0 0 0 0 l5 l4 0 0 0 0 0 0 0 0 0 0 0 l6 10 0 0 0 0 0 0 0 0 0 0 0 0 l7 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 PD.V % K Dt CT 47.86 36.54 31.38 27.03 21.87 10 20 30 40 50 80 0.8 0.4 0.27 0.2 0.16 0.1 2:15 5:18 6:53 11:59 1:04:30 0 0 0 Table 4 Trade-off results f1 f2 30.996 30.895 30.766 30.854 30.947 a 4.607 4.583 4.621 4.568 4.676 f3 2.088 2.555 2.779 2.945 3.137 f4 0.373 0.351 0.361 0.38 0.365 PD.M % 5.42 6.01 5.48 6.35 4.06 a No feasible solution exists for K = 10 and Dt = 0.8. DM must relax the satisfactory objective f11 enough to allow an improvement of the unsatisfactory objectives in the first cycle. Then, Df1 = 39.053 is considered as the acceptable amount of relaxation, and the feasible region is modified as follows in the next iteration cycle: 8 1 X ; > > > > 1 > > < f1 ðxÞ 6 f1 ðx Þ þ Df1 ¼ 70; X 2 ¼ f2 ðxÞ 6 4:676; > > > > f3 ðxÞ 6 3:137; > > : f4 ðxÞ P 0:365: In the second cycle, the solution is x2 = [1, 6, 9, 4, 3.667, 6, 3]T. The compromise solution x2 is presented to the DM, who compares its objective vector f 2 ¼ ðf12 ; f22 ; f32 ; f42 Þ ¼ ð70; 2:156; 0:641; 0:972Þ with the ideal one. If all objectives of the vector f2 are satisfactory, f2 is the final solution and the vector of optimal allocated resource quantities would be x2. In the second compromise solution, PD.M and PD.V are almost equal to 0.05% and 16%, respectively. The accuracy of this solution is good, but even access to this level of accuracy takes a long time (more than 1 hour). 7. Conclusion In this paper, we developed a multi-objective model for the time–cost trade-off problem in a dynamic PERT network with dedicated resource. The new projects are generated according to a renewal process. The projects share the same facilities and have to wait for processing in a station if the same activity of previous project is not finished. ARTICLE IN PRESS 14 A. Azaron, R. Tavakkoli-Moghaddam / European Journal of Operational Research xxx (2006) xxx–xxx The proposed methodology can be extended to general activity durations. In this case, it is possible to approximate the service time distribution by an appropriate generalized Erlang distribution. To do that, we match the first two moments and then apply our proposed method for the time–cost trade-off in the general dynamic PERT network. In the proposed methodology, the dynamic PERT network, representing as a network of queues, was transformed into an equivalent classical PERT network, in that the project completion time distribution could be computed, analytically. Then, for obtaining the optimal resources allocated to the activities, we developed a multi-objective problem with four conflicting objective functions. Finally, the multi-objective optimization problem was cast into a discrete-time approximation, and the latter model was solved using the STEM method. STEM method does not require explicit information from the DM; the trade-off information is implicit. This method has two important advantages over the interactive methods with explicit trade-off information given. 1. The DM is more confident in indicating acceptable achievement levels of objectives than in indicating preferred trade-offs as was necessary for the interactive methods with explicit trade-off information given. 2. The trade-offs presented for the interactive methods with explicit trade-off information given are generally valid over a narrow range of objective values; there is no problem here of improper trade-off selections resulting from the lack of a clearly defined range of validity. Taking into account the above advantages, the STEM method is an appropriate method to solve the multiobjective time–cost trade-off problem in dynamic PERT networks. According to the numerical example, when K approaches to infinity and Dt goes to zero, the percentage differences between the approximated mean and variance and the exact values approach zero. Therefore, the approximated discrete project completion time distribution approaches to the original continuous distribution, because the first two moments of the approximated distribution and the exact one are matched with each other. In this case, the optimal solution of the discrete-time problem approaches to that of the original continuous-time problem, but the computation time goes to infinity. Therefore, we should select proper values for K and Dt, in realistic sized problems, such that we can solve the problem in an acceptable level of accuracy with reasonable computational time. There is no similar analytical method dealing with the time–cost trade-off problem in general dynamic PERT networks and accordingly the proposed method would be an efficient analytical one for solving this problem. Moreover, this paper can be considered as an introduction for the development of proper dispatching rules in dynamic PERT networks, analytically. The limitation of the proposed model is that the state space can grow exponentially with the network size. As the worst case example, for a complete transformed classical PERT network with n nodes and nðn1Þ arcs, 2 the size of the state space is given by N(n) = Un Un1, where Un ¼ n X 2kðnkÞ ð27Þ k¼0 (refer to [26]). In practice, the number of activities in PERT networks is generally much less than nðn1Þ , and it should also 2 be noted that for large networks any alternate method of producing reasonably accurate answers will be prohibitively expensive. Another interactive approach like the method of satisfactory goals, SWT or SEMOPS can also be applied to solve the multi-objective problem (18), refer to [24] for the details of the mentioned methods. Acknowledgement This research is supported by Science Foundation Ireland under Grant No. 03/CE3/I405 as part of the centre for Telecommunications Value-Chain-Driven Research (CTVR) and under Grant No. 00/PI.1/C075. ARTICLE IN PRESS A. Azaron, R. Tavakkoli-Moghaddam / European Journal of Operational Research xxx (2006) xxx–xxx 15 References [1] S. Arisawa, S. Elmaghraby, Optimal time–cost tradeoffs in GERT networks, Management Science 18 (1972) 589–599. [2] H. Arsham, Managing project activity–duration uncertainties, Omega 21 (1993) 111–122. [3] A. Azaron, H. Katagiri, M. Sakawa, K. Kato, A. Memariani, A multi-objective resource allocation problem in PERT networks, European Journal of Operational Research 172 (2006) 838–854. [4] A. Azaron, C. Perkgoz, M. Sakawa, A genetic algorithm approach for the time–cost trade-off in PERT networks, Applied Mathematics and Computation 168 (2005) 1317–1339. [5] A. Azaron, H. Katagiri, K. Kato, M. Sakawa, Longest path analysis in networks of queues: Dynamic scheduling problems, European Journal of Operational Research 174 (2006) 132–149. [6] A. Azaron, M. Modarres, Distribution function of the shortest path in networks of queues, OR Spectrum 27 (2005) 123–144. [7] E. Berman, Resource allocation in a PERT network under continuous activity time–cost function, Management Science 10 (1964) 734–745. [8] D. Chau, W. Chan, K. Govindan, A time–cost trade-off model with resource consideration using genetic algorithm, Civil Engineering Systems 14 (1997) 291–311. [9] R. Deckro, J. Hebert, Resource constraint project crashing, Omega 17 (1989) 69–79. [10] E. Demeulemeester, W. Herroelen, S. Elmaghraby, Optimal procedures for the discrete time–cost trade-off problem in project networks. Research Report, Department of Applied Economics, Katholieke Universiteit Leuven, Leuven, Belgium (1993). [11] S. Elmaghraby, Resource allocation via dynamic programming in activity networks, European Journal of Operational Research 64 (1993) 199–245. [12] J. Falk, J. Horowitz, Critical path problem with concave cost curves, Management Science 19 (1972) 446–455. [13] D. Fulkerson, A network flow computation for project cost curves, Management Science 7 (1961) 167–178. [14] D. Golenko-Ginzburg, A. Gonik, Stochastic network project scheduling with non-consumable limited resources, International Journal of Production Economics 48 (1997) 29–37. [15] D. Golenko-Ginzburg, S. Ljubkin, V. Rezer, S. Sitniakovski, Algorithms of optimal supply of resources to a group of projects (stochastic networks), Automation and Remote Control 62 (2001) 1366–1375. [16] D. Golenko-Ginzburg, A. Gonik, Hierarchical decision-making model for planning and controlling stochastic projects, International Journal of Production Economics 46–47 (1996) 39–54. [17] D. Golenko-Ginzburg, Controlled alternative activity networks in project management, European Journal of Operational Research 37 (1988) 336–346. [18] D. Golenko-Ginzburg, A. Gonik, On-line control model for cost-simulation network projects, Journal of the Operational Research Society 47 (1996) 266–283. [19] D. Golenko-Ginzburg, A. Gonik, On-line control model for network construction projects, Journal of the Operational Research Society 48 (1997) 175–183. [20] D. Golenko-Ginzburg, A. Gonik, High performance heuristic algorithm for controlling stochastic network projects, International Journal of Production Economics 54 (1998) 235–245. [21] D. Golenko-Ginzburg, A. Gonik, L. Papic, Developing cost-optimization production control model via simulation, Mathematics and Computers in Simulation 49 (1999) 335–351. [22] D. Golenko-Ginzburg, A. Gonik, A heuristic for network project scheduling with random activity durations depending on the resource reallocation, International Journal of Production Economics 55 (1998) 149–162. [23] D. Gross, M. Harris, Fundamentals of Queueing Theory, second ed., John Wiley & Sons, New York, 1985. [24] C. Hwang, A. Masud, Multiple Objective Decision Making, Methods and Applications, Springer-Verlag, Berlin, 1979. [25] J. Kelly, Critical path planning and scheduling: Mathematical basis, Operations Research 9 (1961) 296–320. [26] V. Kulkarni, V. Adlakha, Markov and Markov-regenerative PERT networks, Operations Research 34 (1986) 769–781. [27] L. Lamberson, R. Hocking, Optimum time compression in project scheduling, Management Science 16 (1970) 597–606. [28] Z. Laslo, Activity time–cost tradeoffs under time and cost chance constraints, Computers and Industrial Engineering 44 (2003) 365– 384. [29] D. Panagiotakopoulos, A CPM time–cost computational algorithm for arbitrary activity cost functions, INFOR 15 (1977) 183–195. [30] D. Robinson, A dynamic programming solution to cost–time trade-off for CPM, Management Science 22 (1965) 158–166. [31] S. Sethi, G. Thompson, Optimal Control Theory, Martinus Nijhoff Publishing, Boston, 1981. [32] A. Shtub, J. Bard, S. Globerson, Project Management: Engineering, Technology and Implementation, Prentice Hall International, Inc, New York, 1994. [33] L. Tavares, Optimal resource profiles for program scheduling, European Journal of Operational Research 29 (1987) 83–90. [34] J. Weglarz, Project scheduling with continuously divisible doubly constrained resources, Management Science 27 (1981) 1040–1053.
© Copyright 2026 Paperzz