maximizing the net present value of a project under uncertainty

12
Discrete Optimization Maximizing the net present value of a project under uncertainty Wolfram Wiesemann * , Daniel Kuhn, Berç Rustem Imperial College of Science, Technology and Medicine, Department of Computing, South Kensington Campus, London SW7 2AZ, United Kingdom article info Article history: Received 18 April 2008 Accepted 29 May 2009 Available online 17 June 2009 Keywords: Project scheduling Net present value Optimization under uncertainty abstract We address the maximization of a project’s expected net present value when the activity durations and cash flows are described by a discrete set of alternative scenarios with associated occurrence probabili- ties. In this setting, the choice of scenario-independent activity start times frequently leads to infeasible schedules or severe losses in revenues. We suggest to determine an optimal target processing time policy for the project activities instead. Such a policy prescribes an activity to be started as early as possible in the realized scenario, but never before its (scenario-independent) target processing time. We formulate the resulting model as a global optimization problem and present a branch-and-bound algorithm for its solution. Extensive numerical results illustrate the suitability of the proposed policy class and the run- time behavior of the algorithm. Ó 2009 Elsevier B.V. All rights reserved. 1. Introduction Project scheduling is concerned with the temporal coordination of the various tasks of a project. Admissible schedules must obey constraints such as precedence relations (a task cannot start unless some other tasks have been completed) and resource restrictions (labor, machines, etc. are scarce resources with limited capacities). In the following, we assume that projects are given in activity-on- node representation. That is, a project is treated as a directed graph G ¼ðV ; EÞ, where the nodes V ¼f1; ... ; ng represent the activities (e.g., ‘conduct market research’ or ‘develop prototype’) and the arcs, E # V V , denote temporal precedences between the activi- ties (e.g., ‘the prototype cannot be developed before the market re- search has been completed’). Unless otherwise stated, we consider project graphs with a unique source 1 2 V and a unique sink n 2 V ; this can always be achieved by introducing dummy nodes and/or arcs. We furthermore assume that activities give rise to cash flows. Positive cash flows denote cash inflows (e.g., received payments), whereas negative cash flows represent cash outflows (e.g., accrued costs). An introduction to project scheduling can be found in [7]. Most of the literature on project scheduling focuses on arrang- ing activities in such a way that the project makespan, that is, the time required to complete all tasks, is minimized. This objective may be unsuitable for capital-intensive IT and construction pro- jects, where large amounts of money are invested over long peri- ods of time. In such environments, the wise coordination of cash in- and outflows crucially affects the profitability of a project. This suggests that in such situations, financial aspects should be at the center of the decision maker’s attention. A project’s financial ben- efit is measured by its net present value (NPV), which is deter- mined by discounting all arising cash flows (at some internal rate of return) to the start time of the project. As such, the NPV can be regarded as the ‘cash equivalent’ of undertaking the project. In this paper, we present a formulation which maximizes the expected NPV of a project when the activity durations and cash flows are described by a discrete set of alternative scenarios with associated occurrence probabilities [23]. Since cash flows can be positive or negative, the early start policy (‘start every activity as early as possible’) known from makespan minimization does not yield an optimal solution. Similarly, the choice of scenario-inde- pendent activity start times frequently leads to infeasible sched- ules or severe losses in revenues. The search for truly adaptive schedules that react to the uncertainties revealed over time, on the other hand, becomes severely intractable since the underlying stochastic process is decision-dependent [13,21]. To overcome this difficulty, we suggest to determine an optimal (scenario-indepen- dent) target processing time (TPT) policy for the project activities. In case activity i 2 V could be started earlier than its TPT in the realized scenario, it will be postponed to its TPT. If, on the other hand, activity i cannot be started at its TPT (because preceding activities finish late), it will be started as soon as possible thereaf- ter. The class of TPT policies is a strict subset of the class of non- anticipative scheduling decisions. By restricting ourselves to this class, we can solve the NPV maximization problem for projects of non-trivial size. Our model accommodates generalized precedence relations [10,11] but disregards resource restrictions. We discuss these assumptions in Section 3. The remainder of this paper is organized as follows. In the next section we summarize related literature. Section 3 introduces our problem formulation, while Section 4 describes the components of a branch-and-bound solution procedure. Section 5 presents 0377-2217/$ - see front matter Ó 2009 Elsevier B.V. All rights reserved. doi:10.1016/j.ejor.2009.05.045 * Corresponding author. Tel.: +44 (0) 20 7594 8434. E-mail address: [email protected] (W. Wiesemann). European Journal of Operational Research 202 (2010) 356–367 Contents lists available at ScienceDirect European Journal of Operational Research journal homepage: www.elsevier.com/locate/ejor

Upload: menade-hamdaoui

Post on 28-Apr-2017

228 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Maximizing the Net Present Value of a Project Under Uncertainty

European Journal of Operational Research 202 (2010) 356–367

Contents lists available at ScienceDirect

European Journal of Operational Research

journal homepage: www.elsevier .com/locate /e jor

Discrete Optimization

Maximizing the net present value of a project under uncertainty

Wolfram Wiesemann *, Daniel Kuhn, Berç RustemImperial College of Science, Technology and Medicine, Department of Computing, South Kensington Campus, London SW7 2AZ, United Kingdom

a r t i c l e i n f o a b s t r a c t

Article history:Received 18 April 2008Accepted 29 May 2009Available online 17 June 2009

Keywords:Project schedulingNet present valueOptimization under uncertainty

0377-2217/$ - see front matter � 2009 Elsevier B.V. Adoi:10.1016/j.ejor.2009.05.045

* Corresponding author. Tel.: +44 (0) 20 7594 8434E-mail address: [email protected] (W. Wiese

We address the maximization of a project’s expected net present value when the activity durations andcash flows are described by a discrete set of alternative scenarios with associated occurrence probabili-ties. In this setting, the choice of scenario-independent activity start times frequently leads to infeasibleschedules or severe losses in revenues. We suggest to determine an optimal target processing time policyfor the project activities instead. Such a policy prescribes an activity to be started as early as possible inthe realized scenario, but never before its (scenario-independent) target processing time. We formulatethe resulting model as a global optimization problem and present a branch-and-bound algorithm for itssolution. Extensive numerical results illustrate the suitability of the proposed policy class and the run-time behavior of the algorithm.

� 2009 Elsevier B.V. All rights reserved.

1. Introduction

Project scheduling is concerned with the temporal coordinationof the various tasks of a project. Admissible schedules must obeyconstraints such as precedence relations (a task cannot start unlesssome other tasks have been completed) and resource restrictions(labor, machines, etc. are scarce resources with limited capacities).In the following, we assume that projects are given in activity-on-node representation. That is, a project is treated as a directed graphG ¼ ðV ; EÞ, where the nodes V ¼ f1; . . . ;ng represent the activities(e.g., ‘conduct market research’ or ‘develop prototype’) and thearcs, E # V � V , denote temporal precedences between the activi-ties (e.g., ‘the prototype cannot be developed before the market re-search has been completed’). Unless otherwise stated, we considerproject graphs with a unique source 1 2 V and a unique sink n 2 V;this can always be achieved by introducing dummy nodes and/orarcs. We furthermore assume that activities give rise to cash flows.Positive cash flows denote cash inflows (e.g., received payments),whereas negative cash flows represent cash outflows (e.g., accruedcosts). An introduction to project scheduling can be found in [7].

Most of the literature on project scheduling focuses on arrang-ing activities in such a way that the project makespan, that is, thetime required to complete all tasks, is minimized. This objectivemay be unsuitable for capital-intensive IT and construction pro-jects, where large amounts of money are invested over long peri-ods of time. In such environments, the wise coordination of cashin- and outflows crucially affects the profitability of a project. Thissuggests that in such situations, financial aspects should be at thecenter of the decision maker’s attention. A project’s financial ben-

ll rights reserved.

.mann).

efit is measured by its net present value (NPV), which is deter-mined by discounting all arising cash flows (at some internal rateof return) to the start time of the project. As such, the NPV canbe regarded as the ‘cash equivalent’ of undertaking the project.

In this paper, we present a formulation which maximizes theexpected NPV of a project when the activity durations and cashflows are described by a discrete set of alternative scenarios withassociated occurrence probabilities [23]. Since cash flows can bepositive or negative, the early start policy (‘start every activity asearly as possible’) known from makespan minimization does notyield an optimal solution. Similarly, the choice of scenario-inde-pendent activity start times frequently leads to infeasible sched-ules or severe losses in revenues. The search for truly adaptiveschedules that react to the uncertainties revealed over time, onthe other hand, becomes severely intractable since the underlyingstochastic process is decision-dependent [13,21]. To overcome thisdifficulty, we suggest to determine an optimal (scenario-indepen-dent) target processing time (TPT) policy for the project activities.In case activity i 2 V could be started earlier than its TPT in therealized scenario, it will be postponed to its TPT. If, on the otherhand, activity i cannot be started at its TPT (because precedingactivities finish late), it will be started as soon as possible thereaf-ter. The class of TPT policies is a strict subset of the class of non-anticipative scheduling decisions. By restricting ourselves to thisclass, we can solve the NPV maximization problem for projects ofnon-trivial size. Our model accommodates generalized precedencerelations [10,11] but disregards resource restrictions. We discussthese assumptions in Section 3.

The remainder of this paper is organized as follows. In the nextsection we summarize related literature. Section 3 introduces ourproblem formulation, while Section 4 describes the componentsof a branch-and-bound solution procedure. Section 5 presents

Page 2: Maximizing the Net Present Value of a Project Under Uncertainty

W. Wiesemann et al. / European Journal of Operational Research 202 (2010) 356–367 357

and interprets the results of an extensive numerical study. We con-clude in Section 6.

2. Literature review

Maximizing the NPV of a project was first suggested by Russellin 1970 [34].1 He considers problem instances ðG; f; d;bÞ, whereG ¼ ðV ; EÞ represents the project graph, fi the cash flow arising atthe start time of activity i 2 V ;di the duration of activity i 2 V andb ¼ 1=ð1þ aÞ the discount factor with internal rate of return a > 0.An arc ði; jÞ 2 E signalizes that activity j must not be started beforeactivity i has been completed. The assumption that the cash flowsare realized at the beginning of the activities is not restrictive; wecome back to this point in Section 3. In Russell’s model, all parame-ters are deterministic, and there are no resource restrictions. Theobjective is to

MaximizeXi2V

fibxi w:r:t: x 2 Rn

subject to xj P xi þ di 8ði; jÞ 2 E;x1 ¼ 0:

In this formulation, the components of decision vector x representthe activity start times. The objective function maximizes the sumof discounted cash flows. The constraints ensure satisfaction ofthe precedence relations and non-negativity of the schedule. With-out loss of generality, it is assumed that the first activity is started attime zero. A project deadline D can be imposed by adding the con-straint xn 6 D. Russell reduces the problem to a sequence of linearprograms whose objective functions are obtained by linearizationaround the current candidate solution. The duals of these approxi-mations can be solved as network flow problems, and the authorproves local convergence of the overall procedure.

Grinold [15] observed that the simple variable substitutionyi :¼ bxi converts Russell’s formulation into an equivalent linearprogram:

MaximizeXi2V

fiyi w:r:t: y 2 Rn

subject to yj 6 bdi yi 8ði; jÞ 2 E;

y1 ¼ 1;yn P 0:

A project deadline D can be enforced by replacing the last constraintwith yn P bD. Grinold solves this problem with a network simplexvariant.

In [30], Neumann and Zimmermann extended Grinold’s algo-rithm to problem instances C ¼ ðG; f; d; bÞ with generalized prece-dences. Here, G ¼ ðV ; EÞ denotes the project graph, fi the cash flowarising at the start time of activity i 2 V ; dij the minimum time lagbetween the start times of activities i and j (dij < 0 is allowed;hence, the precedences are called ‘generalized’) and b the discountfactor.2 The authors solve problems of the following type.

Maximize gðxÞ :¼Xi2V

fibxi w:r:t: x 2 Rn ð1aÞ

subject to xj P xi þ dij 8ði; jÞ 2 E; ð1bÞx1 ¼ 0: ð1cÞ

Neumann’s and Zimmermann’s algorithm has been shown to per-form favorably in practice [7,37]. In Section 4.1 we will employ this

1 We will use a consistent notation for all models reviewed in this section.Therefore, we may slightly modify some of the original formulations withoutchanging their meaning.

2 Generalized precedences are explained further in Section 3.

algorithm to solve subproblems that arise in our branch-and-boundprocedure.

In [9], Elmaghraby and Herroelen proposed an approximatesolution procedure to the NPV maximization problem, while Sch-windt and Zimmermann develop an exact method based on thesteepest ascent principle in [37]. Comparisons of the various ap-proaches can be found in [7,37].

Over the last two decades, numerous publications have ad-dressed extensions of the deterministic NPV maximization prob-lem, the majority of which allow for different types of resourceconstraints. We do not provide more details on those efforts andrefer the interested reader to the extensive surveys [7,19]. Interest-ingly, the incorporation of uncertainty has attracted significantlyless attention, just as project scheduling under uncertainty has ingeneral been neglected for a long time. This is surprising as theuncertainty underlying projects is known to affect the quality ofa schedule significantly [7,8,20,22,28].

Assuming independent and exponentially distributed activitydurations, Buss and Rosenblatt [4] as well as Tilson et al. [40] ex-tend Russell’s model to include uncertainty. Both contributionsemploy continuous-time Markov chains whose states assign labels‘not yet started’, ‘in progress’ and ‘finished’ to all activities. Contin-uous-time Markov chains were first used in project scheduling byKulkarni and Adlakha [25]. The restriction to exponentially distrib-uted durations can be relaxed at the cost of significantly augment-ing the state space. Unfortunately, the number of states in theMarkov chain grows exponentially with the project size, evenwhen assuming exponentially distributed activity durations. As aresult, these methods are primarily applicable to small projects.

For general activity duration distributions, several heuristicshave been suggested. Buss [3] determines optimal activity delaysvia simulation-based optimization. The author points out that opti-mization is very challenging since the objective function is highlyvariable but flat near the (suspected) optimum. Wang et al. [41]present a simulated annealing heuristic for discretized activityduration distributions and report on promising computational re-sults. Tavares et al. [39] suggest a general solution approach for sto-chastic project scheduling based on floating factor policies: the totalfloat of an activity i 2 V is defined as the difference between its lat-est ðjiÞ and earliest ðkiÞ start times given some project deadline andaverage activity durations. For a fixed float factor a 2 ½0;1�, activity ishould be started as early as possible but not before timeki þ aðji � kiÞ. The authors suggest to evaluate the impact of a viaMonte Carlo simulation and to choose the value of a that minimizesa composite risk measure (e.g., the probability that the projectduration or the overall costs exceed specified tolerances).

The method that comes closest to ours was presented by Benati[1]. Again, the project structure is assumed to be given asG ¼ ðV ; EÞ, where an arc ði; jÞ 2 E stipulates that activity j cannotbe started before activity i has been finished. The author assumesthat the cash flows are deterministic, whereas finitely many sce-narios s 2 S with associated occurrence probabilities ps specifythe uncertain task durations ds

i , i 2 V . The goal is to maximize theexpected net present value over all scenarios, which is done heuris-tically by determining a delay policy with the following two-stageprocedure. In the first stage, the optimal ‘average’ activity starttimes are approximated as follows:

MaximizeXi2V

fibxi w:r:t: x 2 Rn

subject to xj PXs2S

ps maxi2V

xi þ dsi : ði; jÞ 2 E

� �8j 2 V n f1g;

x1 ¼ 0:

In this model, cash flow fi is assumed to arise at the start time xi ofactivity i 2 V; we refer to Section 3 for a further discussion. The

Page 3: Maximizing the Net Present Value of a Project Under Uncertainty

358 W. Wiesemann et al. / European Journal of Operational Research 202 (2010) 356–367

precedence constraints are imposed to hold in expectation. Thismodel is not convex, and the author uses a local search procedureto obtain locally optimal start times. In the second stage, a fixed-de-lay policy r is determined by setting r1 :¼ x�1 and

rj :¼ x�j �Xs2S

ps maxi2V

x�i þ dsi : ði; jÞ 2 E

� �8j 2 V n f1g;

where x� denotes the optimal solution of the first-stage problem.The fixed-delay policy r prescribes to delay the start time of activityi 2 V by ri time units (compared to its earliest possible start time,which itself depends on the realized scenario). Benati’s approachis very attractive from a computational point of view, but it doesnot give any guarantees with respect to optimality. We will revisitthis method in Section 5 when we compare its solutions withschedules obtained from TPT policies.

Finally, we mention the contributions of Özdamar [31] and Özd-amar and Dündar [32] who address the problem of maximizing aproject’s NPV subject to capital constraints and multiple activityexecution modes. Capital is treated as a randomly replenished re-source which can be temporally acquired at given costs. Theauthors present an online scheduling heuristic to solve thisproblem.

3. Problem formulation

We study projects in activity-on-node representation (see Sec-tion 1) with generalized precedence relations. This means thatwe allow for both minimum and maximum time lags betweenthe start and finish times of project activities. A minimum timelag of length d P 0 between the start times of activities i and j ismodeled as a precedence relation ði; jÞ 2 E with positive valuedij ¼ d, whereas a similar maximum time lag of length d P 0 corre-sponds to a precedence relation ðj; iÞ 2 E with negative valuedji ¼ �d. This allows us to represent both minimum and maximumtime lags by inequalities of type xq P xp þ dpq; ðp; qÞ 2 E, where xp

and xq represent the start times of activities p and q, respectively.Since the finish time of an activity equals its start time plus itsduration, this approach immediately extends to time lags specifiedin terms of both start and finish times. An ‘ordinary precedence’between activities i and j (i.e., ‘j cannot start before i has been com-pleted’) reduces to a minimum time lag of value 0 between the fin-ish time of i and the start time of j. We refer to [10,11] for a detaileddiscussion of generalized precedence relations, together with con-venient ways of specifying projects in this format.

We consider problem instances � ¼ ðG; S; p; f; d;D; bÞ, whereG ¼ ðV ; EÞ denotes the project graph and S ¼ f1; . . . ;mg the indexset of discrete scenarios with occurrence probabilities ps for s 2 S.fs

i denotes the cash flow arising at the start time of activity i 2 Vin scenario s 2 S. The assumption that cash flows arise at the activ-ity start times is not restrictive: imagine, for example, that a cashflow zs

i in scenario s 2 S arises when activity i 2 V is completed.Assuming that the discount factor is b and that the duration ofactivity i amounts to ds

i in scenario s, the end-of-activity cash flowzs

i is equivalent to a cash flow fsi ¼ bds

i zsi at the start time of activity i

in scenario s. The value of precedence relation ði; jÞ 2 E in scenarios 2 S is denoted by ds

ij. Without loss of generality, we assume thatfor a given ði; jÞ 2 E, ds

ij is of equal sign for all s 2 S. We can then de-fine the subset of positive-valued and negative-valued precedencerelations by Eþ ¼ fði; jÞ 2 E : ds

ij P 0 8s 2 Sg and E� ¼ E n Eþ, respec-tively. In Section 1 we assumed that activity 1 ðnÞ constitutes theunique source (sink) of the project. In the light of generalized pre-cedence relations, we now impose the same requirements for theproject subgraph G ¼ ðV ; EþÞ. In order to avoid unbounded probleminstances, i.e., instances in which it is beneficial to delay some pro-ject activities indefinitely, we assume that there is a scenario-inde-

pendent project deadline D. Since we can choose D as large as wewish, this assumption does not restrict the generality of our model.As before, b denotes the discount factor.

With the notation introduced above, our model can be formu-lated as follows:

Maximize f ðr; xÞ :¼Xs2S

ps

Xi2V

fsi b

xsi w:r:t: ðr; xÞ 2 Rn � Rnm

ð2aÞ

subject to ðr; xÞ 2 X� , where X� is described by constraint sets (2b)–(2e):

xsj ¼max sup

i2Vxs

i þ dsij : ði; jÞ 2 Eþ

n o; rj

� �8j 2 V ; s 2 S; ð2bÞ

xsj P xs

i þ dsij 8ði; jÞ 2 E�; s 2 S; ð2cÞ

xsn 6 D 8s 2 S; ð2dÞ

rj P 0 8j 2 V : ð2eÞ

In this model, r represents the desired TPT policy and as such con-stitutes the decision vector of interest. Vector x, on the other hand,consists of ancillary variables that are required to evaluate the ex-pected NPV over all scenarios. More precisely, xs

i denotes the factualstart time of activity i 2 V if scenario s 2 S is realized. Since the cashflows are realized at the activity start times, the objective functionrepresents the expected NPV over all scenarios. Eq. (2b) uniquelyspecifies the activity start times x as a function of preceding starttimes and the TPT policy r. In particular, the start time of activityj in scenario s only depends on the start times of preceding activitiesi; ði; jÞ 2 Eþ, in this scenario, the respective minimum time lags andrj. Eq. (2c) ensures satisfaction of the negative-valued precedencerelations, while (2d) enforces the project deadline in all scenarios.Note that (2d) cannot be replaced with maximum time lags be-tween events 1 and n since xs

1 is allowed to be strictly positive(by choosing r1 > 0). Eq. (2e) ensures non-negativity of the solution.We remark that r can be chosen freely as long as the correspondingvector x satisfies all precedence relations in every scenario. Fixing rto the zero vector, for example, entails that all activities are startedas early as possible in every scenario. The relation enforced betweenr and x as described by (2b) is in accordance with our definition ofTPT policies (see Section 1), and it constitutes a sufficient conditionfor non-anticipativity of the solution. However, it is not a necessarycondition for non-anticipativity, and there might be feasible sched-uling policies that result in better solutions.

Model (2) employs the expected value as decision criterion,which is in line with the majority of contributions for NPV maximi-zation under uncertainty. Sometimes, however, cautious projectmanagers might take a more conservative stance and wish to avoidexcessive losses in any particular scenario. Our model can accountfor individual risk preferences if the activity cash flows f are re-placed with associated utilities. In this case, model (2) maximizesthe expected (discounted) overall utility [12]. Note also that thedescribed model allows both the cash flows and the activity dura-tions to depend on the realized scenario. This is desirable as longeractivity durations typically imply higher activity costs, whichthemselves have a direct impact on the associated cash flows. Inaccordance with the existing body of literature, we disregard re-source constraints and assume a constant discount factor b. Ab-sence of resource restrictions constitutes a compromise thatfacilitates tractability of the resulting model. Indeed, resource-con-strained project scheduling problems under uncertainty are verydifficult to solve, even when cash flows are disregarded [20,27].Apart from computational considerations, one could justify the ab-sence of resource restrictions by the fact that NPV maximizationmodels are typically employed in the early stages of the planningprocess to evaluate the profitability of a project. At this stage,

Page 4: Maximizing the Net Present Value of a Project Under Uncertainty

Fig. 1. Example project network. The numbers attached to the arcs denote thevalues of the precedence relations, while the numbers attached to the nodesrepresent cash flows. In both cases, the first (second) number refers to the value inscenario 1 (2). Node 4 represents a dummy activity that signalizes the end of theproject.

Fig. 2. Gantt charts for the scenario-wise optimal schedules (left) and the TPTschedule r ¼ ð0;0; 0; 0Þ (right). The horizontal axis displays the time elapsed sinceproject start, while the vertical axis lists the precedence relations. Arrows indicatethe activity start times.

W. Wiesemann et al. / European Journal of Operational Research 202 (2010) 356–367 359

resource constraints may be of minor concern and can sometimesbe dealt with by managerial intervention, e.g., by acquiring addi-tional resources, shifting holidays or relying on overtime. Never-theless, the inclusion of resource constraints constitutes apromising path for future research.

A possible variation of our model is to find optimal activity de-lays in the spirit of Benati’s formulation (see Section 2). Instead oftarget processing times, we would then seek for a scenario-inde-pendent activity delay policy that specifies how much to deferactivity j beyond the expiry of minimum time lags ði; jÞ 2 Eþ. Theresulting model is neither a special case nor a generalization ofour formulation: for a given problem instance, either model canlead to a superior expected NPV. In view of exact solution proce-dures, however, such an activity delay formulation seems signifi-cantly more involved than model (2).3 In Section 5.1, we compareTPT policies with activity delay policies obtained from Benati’stwo-stage procedure. Finally, if the durations in model (2) do not de-pend on the realized scenario, the optimal TPT policy can be deter-mined by solving a deterministic NPV maximization problem withaveraged cash flows f0i :¼

Ps2Spsf

si . This follows from linearity of

the expectation operator.Let us examine the convexity properties of our model. Leaving

the objective function aside for the moment (we could potentiallylinearize it by employing Grinold’s variable substitution), only con-straint set (2b) requires investigation. Its right-hand sides are con-vex but generically not affine as they constitute maxima of affinefunctions. Thus, (2b) leads to a non-convex set of feasible solutions.We cannot replace the equalities by greater or equal constraints,however, as otherwise non-anticipativity can be violated in thepresence of project activities with cash outflows. To illustrate this,let us assume that fs

j < 0 for ðj; sÞ 2 V � S. Ceteris paribus, it wouldbe beneficial to start activity j in scenario s at the latest possibletime consistent with all precedence relations, that is, at time

infk2V xsk � ds

jk : ðj; kÞ 2 En o

. As this time can exceed both

maxi2V xsi þ ds

ij : ði; jÞ 2 Eþn o

and rj, such a decision would anticipate

the realized scenario and as such violate causality.The non-convexity of problem � can also be illustrated by the

project in Fig. 1. For two scenarios, p ¼ ð0:5;0:5Þ;D ¼ 20 and anyb > 0, the scenario-wise optimal (i.e., anticipative) solutions x1

and x2 are visualized on the left side of Fig. 2. We see that activity2 is started as early as possible in scenario 1 as it leads to a cashinflow. The same activity starts as late as possible in scenario 2,however, since it leads to a cash outflow there. The right part ofFig. 2 shows the (non-anticipative) schedules stipulated by TPTvector r ¼ ð0;0;0;0Þ. Set uðkÞ :¼ f ðð0; k;0;0Þ; xkÞ; k 2 ½0;16�, wherexk denotes the unique activity start time vector that satisfiesðð0; k;0;0Þ; xkÞ 2 X� for a given k. We see that u has zero slopefor k 2 ½0;2Þ (changing r2 has no impact), a negative slope fork 2 ð2;5Þ (the start time of activity 2 is postponed in scenario 1),

3 The reason for this becomes clear when we discuss the nodal bounds of ourbranch-and-bound procedure. While our bounds are determined through linearprograms, the bounding problems that arise in the activity delay formulationconstitute non-convex problems.

a positive slope for k 2 ð5;8Þ (activity 2 is postponed in both sce-narios), and finally a negative slope for k 2 ð8;16� (activities 2, 3and 4 are postponed in both scenarios). Thus, the project’s NPV isneither convex nor concave in r.

We close this section with some comments on the scenario setS. In view of the solution approach to be proposed, we require S tobe of small cardinality, that is, it should not contain more than 20–30 elements. While this may be seen as a limitation of our method,we remark that even elementary project scheduling problems be-come challenging under parameter uncertainty [16]. To the bestof our knowledge, the only possibility to circumvent this difficultyis to either ignore uncertainty or employ a scenario-free uncer-tainty model. Our numerical results in Section 5.1 confirm the con-ventional wisdom that deterministic solutions can lead to poorresults in the presence of uncertainty [7,8,20,22,28]. Popular sce-nario-free approaches to project scheduling are based on exponen-tially distributed activity durations [4,40] or employ a min–maxobjective [5,6]. However, both approaches lead to challenging opti-mization problems themselves, the former one due to the curse ofdimensionality in dynamic programming and the latter one due tothe non-convexity and two-stage nature of model (2). Despite itsshortcomings, we thus believe that the proposed approach consti-tutes a viable tool for the maximization of a project’s NPV. In thefuture, heuristic solution procedures may help to tackle modelswith larger scenario sets. Our (exact) solution procedure can beused to assess the performance of such heuristics.

Suitable activity duration and cash flow scenarios can be ob-tained from activity-wise estimates or via scenario planning tech-niques. In the former case, alternative outcomes for the durationand the cash flow of a given project activity can be determined,for example, by employing three point estimates as in the classicalPERT model [26]. The scenario set S then results from the crossproduct of all individual activity outcomes. Clearly, this approachproduces huge scenario sets: even if we assume that every activitycontributes only three different scenarios, we end up with a sce-nario set of cardinality 3jV j. However, scenario reduction tech-niques may be used to determine a small subset of scenarios thatdescribes the aforementioned cross product as well as possible[17,18].4 Scenario planning techniques, on the other hand, ask thedecision maker to identify the key drivers that affect the durationsand cash flows of all (or many) project activities, such as the weath-er, commodity prices, potential competitor reactions and future ex-change rates. One can then construct an initial set of scenarios byattaching probabilities to the various combinations of possible driveroutcomes (e.g. via cross-impact analysis [14]). The number of sce-narios can subsequently be reduced by clustering techniques. Sce-nario planning techniques have gained popularity in both theory[24,36] and practice [35]. Contrary to individual activity estimates,

4 Loosely speaking, scenario reduction techniques remove those scenarios thathave the least impact on the solution of the model.

Page 5: Maximizing the Net Present Value of a Project Under Uncertainty

360 W. Wiesemann et al. / European Journal of Operational Research 202 (2010) 356–367

these techniques naturally allow to model correlations among theuncertain parameters.

5 Here, M denotes a sufficiently large number, for example M ¼P

s2SP

i2V jfsi j.

6 Note that x̂ – xðr̂Þ in general. We will revisit this point later in the text.

4. Solution procedure

In the following, we develop a branch-and-bound procedure forthe solution of model (2). Branch-and-bound algorithms solveoptimization problems by implicitly enumerating the set of feasi-ble solutions in a branch-and-bound tree T. Every node of T rep-resents a subset of the feasible solutions. The tree constructionstarts at the root node, which represents the entire set of feasiblesolutions. Branch-and-bound algorithms iteratively select treenodes s 2T for branching. When a node s is branched, its set offeasible solutions, Xs, is split into several subsets whose unioncoincides with Xs. Every subset thus generated represents a ‘child’node of s in T. In principle, nodes of T can be split until their asso-ciated solution sets reduce (or converge) to singletons. In order toavoid such a complete enumeration, however, one calculatesbounds for the optimal objective value achievable at each treenode. A node may then be fathomed as soon as it is guaranteed thatit does not contain any better solution than the best one currentlyknown. The crucial components of branch-and-bound proceduresare the bounds employed, the branching scheme and the nodeselection rule, i.e., a recipe that specifies which node of T to splitnext.

In our branch-and-bound algorithm we determine an upperbound for the optimal objective value achievable at tree node sby maximizing f over a relaxation of Xs that neglects non-anticip-ativity. This is done by replacing the equalities in (2b) by greater orequal relations. As long as the optimal solution ðr; xÞ of such arelaxation contains an xs

j that satisfies the strict inequality

xsj > max sup

i2Vxs

i þ dsij : ði; jÞ 2 Eþ

n o; rj

� �;

non-anticipativity is violated (see Section 3). In this case, ourbranching scheme fixes xs

j to either rj or xsi þ ds

ij for one i 2 V withði; jÞ 2 Eþ, and every such fixation leads to a child node of s.

We now formalize this idea. The relaxed feasible set Y� is de-fined through

xsj P xs

i þ dsij 8ði; jÞ 2 E; s 2 S

xsj P rj 8j 2 V ; s 2 S

xsn 6 D 8s 2 S

rj P 0 8j 2 V

9>>>>=>>>>;() ðr; xÞ 2 Y� : ð3Þ

Note that Y� constitutes a convex relaxation of X� as defined in (2).The requirement that xs

j has to equal xsi þ ds

ij for an i 2 V withði; jÞ 2 Eþ or rj will be enforced by restricting ðr; xÞ to one of thehyperplanes

Ysij :¼

ðr; xÞ : xsj ¼ xs

i þ dsij

n ofor ði; jÞ 2 Eþ; s 2 S;

ðr; xÞ : xsj ¼ rj

n ofor i ¼ j 2 V ; s 2 S;

; otherwise:

8>>><>>>: ð4Þ

We identify a tree node s 2T with the hyperplane restrictions itenforces, that is, s # V2 � S. For a given node s, we define the asso-ciated set of feasible solutions, Xs, as well as its relaxation, Ys, as

Xs ¼ X� \\ði;j;sÞ2s

Ysij and Ys ¼ Y� \

\ði;j;sÞ2s

Ysij: ð5Þ

X� #Y� implies that Xs #Ys, and hence we obtain an upper boundfor the achievable objective value at node s by maximizing f over Ys

instead of Xs.Given a TPT policy r 2 Rn

þ, we define the induced schedulexðrÞ 2 Rnm recursively as follows:

xsj ðrÞ :¼max sup

i2Vxs

i ðrÞ þ dsij : ði; jÞ 2 Eþ

n o; rj

� �: ð6Þ

Remember that the precedence relations in Eþ are non-negative val-ued in all scenarios s 2 S. If there is a cycle in Eþ, all arcs in the cyclemust be associated with zero-valued precedences, for otherwise theproject structure is inconsistent (an activity cannot be finished be-fore it is started). Thus, the induced schedule is well-defined. Due tothe relation between (6) and (2b), xs

j ðrÞ equals the factual start timeof activity j if TPT policy r is implemented and scenario s is realized.By construction, xðrÞ satisfies all minimum time lags in every sce-nario. If xðrÞ also satisfies all maximum time lags in every scenario,that is, if ðr; xðrÞÞ 2 X� , we call r a feasible policy.

With this notation, our solution approach can be described asfollows.

1. Initialization. Set L :¼ fs0gwith s0 ¼ ;; r� :¼ 0; f � :¼ f ðr�; xðr�ÞÞif r� is feasible and f � :¼ �M otherwise.5

2. Node selection. If L ¼ ; or

maxs2L

supðr;xÞ2Ys

f ðr; xÞ 6 f �;

go to Step 5. Otherwise, select a node s 2L with

s 2 arg maxs2L

supðr;xÞ2Ys

f ðr; xÞ

and set L :¼L n fsg.3. Bounding. For the node s selected in Step 2, let

ðr̂; x̂Þ :¼ arg maxff ðr; xÞ : ðr; xÞ 2 Ysg

be a solution of the upper bound problem at s. If r̂ is feasible and

f ðr̂; xðr̂ÞÞ > f �;

where xðr̂Þ is defined in (6), set r� :¼ r̂ and f � :¼ f ðr̂; xðr̂ÞÞ, i.e., anew incumbent TPT policy has been found.6

4. Branching. Let

Vs ¼ ðj; sÞ 2 V � S : x̂sj > max sup

i2Vx̂s

i þ dsij : ði; jÞ 2 Eþ

n o; r̂j

� �� �be the set of activity–scenario pairs violating non-anticipativityin ðr̂; x̂Þ. If Vs – ;, select ðj; sÞ 2 Vs according to some branchingscheme and set

L :¼L [[i2Vði;jÞ2Eþ

s [ fði; j; sÞgf g

0BB@1CCA [ fs [ fðj; j; sÞgg:

Go to Step 2 (next iteration).5. Termination. If f � – �M; r� represents the optimal TPT policy.

Otherwise, the problem is infeasible.

Instead of storing the branch-and-bound tree T explicitly, thealgorithm keeps a list L of nodes that have been constructed bySteps 1 and 4 but not yet selected by Step 2. The relation betweenT and L is that s 2T if and only if s 2L at some point duringthe execution of the algorithm.

In Step 1, L only contains the root node s0 ¼ ;# V2 � S. Hence,all non-anticipativity constraints as described by (2b) are relaxedin the beginning. r� denotes the best TPT policy found so far, andf � denotes its expected NPV. We assign an expected NPV of �Mto infeasible policies.

In Step 2, we first check whether we can terminate. This isthe case if no more nodes are available or eligible for further

Page 6: Maximizing the Net Present Value of a Project Under Uncertainty

W. Wiesemann et al. / European Journal of Operational Research 202 (2010) 356–367 361

processing. Nodes are available for further processing if L is non-empty. Note that after Step 1, L contains the root nodes0 ¼ ;# V2 � S and thus is not empty. A node is eligible for furtherprocessing if its upper bound exceeds f �, i.e., if it potentially con-tains a better TPT policy than r�. In case L contains eligible nodes,we select a node that attains the maximal upper bound. In the fol-lowing, we refer to this node as s.

In Step 3, we calculate an upper bound for the maximal value off over Xs. This bound is determined by the maximal value of f overthe relaxed constraint set Ys as defined in (5), and the correspond-ing optimal solution is denoted by ðr̂; x̂Þ. In case r̂ constitutes a fea-sible TPT policy, we also obtain a lower bound f ðr̂; xðr̂ÞÞ for the(globally) best TPT policy. We use this lower bound to improveðr�; f �Þ if possible. Note that x̂ – xðr̂Þ in general: x̂ contains the opti-mal activity start times when neglecting some of the non-anticip-ativity constraints. As such, x̂ typically violates non-anticipativity,that is, the set Vs defined in Step 4 is usually non-empty. xðr̂Þ, onthe other hand, represents the activity start times that result fromimplementing the TPT policy r̂ (see Section 1). Although xðr̂Þ is non-anticipative by construction, it may violate some negative-valuedprecedences ði; jÞ 2 E�. In model (2), constraint set (2b) ensuresthat feasible solutions ðr; xÞ 2 X� satisfy x ¼ xðrÞ. In our branch-and-bound algorithm, coincidence of x̂ and xðr̂Þ is established grad-ually by adding hyperplane restrictions Ys

ij.In case the upper bound solution ðr̂; x̂Þ violates non-anticipativ-

ity, we select an anticipating activity–scenario pair ðj; sÞ 2 V � S inStep 4 according to some branching scheme. We analyzed severalbranching schemes, including rules based on activity start times,numbers of incoming positive-valued precedences and gaps be-tween activity start times and their incoming positive-valuedprecedences. In our experiments, the following strategy performedbest: for every anticipative activity–scenario pair ðj; sÞ 2 V � S,determine the minimum decrease in objective value caused byshifting j to the expiration time of any of its incoming positive-val-ued precedences or to rj in scenario s:

gðj; sÞ :¼ psjfsj jmin inf

i2Vbx̂s

iþds

ij � bx̂sj : ði; jÞ 2 Eþ

n o; br̂j � bx̂s

j

� �:

gðj; sÞ essentially approximates the minimum additional expectedcosts of ensuring non-anticipativity for ðj; sÞ. We select the anticipa-tive activity–scenario pair ðj; sÞ with maximal gðj; sÞ. The hope isthat this greedy selection rule leads to a fast decrease of the nodalupper bounds. Having selected a pair ðj; sÞ 2 V � S, we create onechild node for every possible fixation of xs

j to one of its predecessorsi 2 V ; ði; jÞ 2 Eþ. We furthermore create a child node that fixes xs

j torj. These new child nodes s [ fði; j; sÞg and s [ fðj; j; sÞg are appendedto L, and then we go back to Step 2.

After finitely many iterations, L does not contain any furtheravailable or eligible nodes in Step 2. At this point, the algorithm en-ters Step 5 and delivers either an optimal TPT policy or establishesthe infeasibility of model (2).

The correctness of our branch-and-bound algorithm is proved intwo steps. First, we show that the algorithm always terminates aftera finite number of iterations. Afterwards, we show that if the algo-rithm terminates, it provides the correct result. Before we start,however, we need to introduce some additional notation. We al-ready described the correspondence between node list L and theimplicitly generated branch-and-bound tree T. For any nodes 2T we denote the set of direct descendants by DTðsÞ. Thus, wehave that s0 2 DTðsÞ if and only if s0 is added to L as a result ofbranching s in Step 4 of our algorithm. We furthermore denote theset of all (transitive) descendants of s in T by D�TðsÞ, that is,D�TðsÞ contains all direct descendants of s, all direct descendant ofs’s direct descendants, etc. Similarly, ATðsÞ denotes the set of directancestors of s (a singleton). We have s 2 ATðs0Þ if and only ifs0 2 DTðsÞ. Finally, A�TðsÞ refers to all (transitive) ancestors of s in T.

We now prove finite termination and completeness of ouralgorithm.

Theorem 4.1 (Termination). For any given problem instance, thealgorithm terminates after finitely many iterations.

Proof. We show that the generated branch-and-bound tree T isfinite. By the correspondence between L and T, the claim thenfollows immediately. For every s 2T; jDTðsÞj is bounded by jV j,because an anticipating activity–scenario pair ðj; sÞ 2 V � S canonly be fixed to either one of its preceding activities i 2 V withði; jÞ 2 Eþ or to rj. If ðj; sÞ 2 Vs is branched upon, ðj; sÞ R Vs0 for anytransitive descendant s0 2 D�TðsÞ, because either ði; j; sÞ 2 s0 fori 2 V with ði; jÞ 2 Eþ or ðj; j; sÞ 2 s0. As a result, no node s 2T canpossess more than nm fixations. Hence, both the number of levelsin T and the fan-out within each level are bounded, which provesfiniteness of T. h

Theorem 4.2 (Completeness). The algorithm returns f � ¼ �M if theproblem is infeasible and a TPT policy r� with

ðr�; xðr�ÞÞ 2 arg maxff ðr; xÞ : ðr; xÞ 2 X� g

otherwise.

Proof. We first show that the algorithm correctly identifies infea-sible instances. The algorithm classifies a problem as infeasible iff � ¼ �M after termination. Note that f � can only change in Step 3.For this to happen, however, r� needs to be feasible, implying thata feasible solution in Xs (and, a fortiori, in X� ) has been found.Thus, for any infeasible instance, our algorithm returns f � ¼ �M,that is, it correctly recognizes the problem’s infeasibility.

If instance � is feasible, it has an optimal solution: the existenceof a finite project deadline, together with the assumption of aunique source in the project subgraph ðV ; EþÞ, ensures that X� iscompact. The continuous function (2a) thus attains its maximumover X� due to the Weierstrass maximum theorem.

We now prove that if the problem is feasible, then the algorithmfinds an optimal solution. To show this, let ro be an optimal TPTpolicy. We examine the branch-and-bound tree T generated byour procedure. Let T0 :¼ s 2T : ðro; xðroÞÞ 2 Xsf g, i.e., T0 consistsof all the tree nodes of T that contain the optimal solutionðro; xðroÞÞ. Note that T0 – ; since it contains at least the root nodeof T. We now remove from T0 all nodes that have descendants inT0, i.e., T00 :¼T0 n

Ss2T0A

�T0 ðsÞ. By construction, T00 – ; holds as

well. Let us fix an arbitrary s 2T00. During the execution of ouralgorithm, s has either been selected in Step 2 or not. If it has neverbeen selected, the inequality f ðro; xðroÞÞ 6 maxff ðr; xÞ :

ðr; xÞ 2 Ysg 6 f � must hold at the end of the algorithm, implyingthat a TPT policy at least as good as ro has been found. In case s hasbeen selected in Step 2 at some point, we know by definition ofT00 that s has not been branched. This is only possible if Vs ¼ ;, i.e.,if ðr̂; x̂Þ 2 arg maxff ðr; xÞ : ðr; xÞ 2 Ysg is feasible, where ðr̂; x̂Þdenotes the upper bound for s determined in Step 3. In that case,however, r� has been updated to r̂ in Step 3 (if necessary) and thus,a TPT policy at least as good as ro has been identified by ourmethod. h

In our algorithm description, we did not consider any dominancerules. In fact, the dominance rules that prevail in the literature (see[2,7]) are based on partial schedules. The tree nodes of T, on theother hand, represent sets of complete schedules which may notyet be feasible due to their anticipativity. As a result, classical dom-inance rules such as the ‘superset–subset’ rule [7] are not (directly)applicable. Whether other dominance rules can be used beneficiallyto enhance our algorithm remains an area for further research.

Step 3 of our branch-and-bound procedure requires the efficientsolution of

Page 7: Maximizing the Net Present Value of a Project Under Uncertainty

Fig. 3. For the simple stochastic project in the left chart (only the project structureis shown), the deterministic NPV maximization problem Cðs0Þ with s0 ¼ ; isvisualized on the right side. 0 represents the artificial source, 1; . . . ;4 the TPT nodesand 5; . . . ;12 the activity–scenario nodes. The precedences (8,0) and (12,0) enforcethe project deadline.

Fig. 4. For i; j 2 V with a minimum time lag ði; jÞ 2 Eþ of duration 1 and a maximumtime lag ðj; iÞ 2 E� of duration 2 in scenario s 2 S, the left chart visualizes thecorresponding subgraph of eG with p ¼ snþ i and q ¼ snþ j. Conducting the fixationði; j; sÞ replaces the value of precedence ðq; pÞ 2 eE as shown on the right side.

362 W. Wiesemann et al. / European Journal of Operational Research 202 (2010) 356–367

maxff ðr; xÞ : ðr; xÞ 2 Ysg ð� ðsÞÞ

for nodes s 2T, where Ys results from the intersection of Y� withthe hyperplanes indexed by s, see (3)–(5). In the following, we referto this problem as � ðsÞ. It is equivalent to the following optimiza-tion problem:

MaximizeXs2S

ps

Xi2V

fsi b

xsi w:r:t: ðr; xÞ 2 Rn � Rnm

subject to xsj

¼ xsi þ ds

ij if ði; j; sÞ 2 s

P xsi þ ds

ij otherwise

(8ði; jÞ 2 E; s 2 S;

xsj

¼ rj if ðj; j; sÞ 2 s

P rj otherwise

(8j 2 V ; s 2 S;

xsn 6 D 8s 2 S;

rj P 0 8j 2 V :

In analogy to Russell’s model (see Section 2), we could employ thesubstitutions tj :¼ brj ; j 2 V , and ys

j :¼ bxsj ; j 2 V and s 2 S, to trans-

form this problem into an equivalent linear program. As we willshow in Section 4.1, however, � ðsÞ can also be reformulated as adeterministic NPV maximization problem. The latter approach im-proves the performance of our branch-and-bound procedure sincethe specialized algorithms reviewed in Section 2 outperform linearprogramming solvers by several orders of magnitude [37]. In Sec-tion 4.2 we discuss how to exploit information from the father nodein the branch-and-bound tree when solving � ðsÞ. This allows us tofurther speed up the calculation of nodal upper bounds as the algo-rithms reviewed in Section 2 require significantly fewer iterationswhen warm-started from near-optimal solutions.

4.1. Efficient nodal bounds

For stochastic NPV maximization instance � ¼ ðG; S; p; f; d;D; bÞand tree node s 2T, we define an instance CðsÞ ¼ ðeG;~f; ~d; bÞ ofthe deterministic NPV maximization problem (1) as follows.eG ¼ ðeV ; eEÞ represents a project whose node set eV ¼ f0; . . . ; ~ng con-sists of three categories. The first category encompasses the artifi-cial start node 0, which provides a unique source for the projectnetwork. The second category consists of TPT nodes i ¼ 1; . . . ;n,which correspond to the target processing times ri; i 2 V . The lastcategory encompasses activity–scenario nodes p ¼ snþ i for i 2 Vand s 2 S, which represent the activity start times in the differentscenarios. For a project with two scenarios, for example, nodesnþ 1; . . . ;2n describe the start times of activities 1; . . . ;n inscenario 1, respectively, and nodes 2nþ 1; . . . ;3n ¼ ~n describe thecorresponding start times in scenario 2. We assign a cash flow ofmagnitude psf

si to activity–scenario node p ¼ snþ i; i 2 V and

s 2 S, while the other nodes in eV do not give rise to cash flows.Thus, the node-related data of CðsÞ can be summarized as follows:eV :¼ f0; . . . ; ~ng with ~n ¼ nðmþ 1Þ; ð7Þ

~fp :¼psf

si if p ¼ snþ i; i 2 V and s 2 S;

0 otherwise:

�ð8Þ

We now construct the precedences eE. We establish zero-valuedprecedences between the artificial start node 0 and all TPT nodesi ¼ 1; . . . ;n to ensure non-negativity of the solution. Next, we addzero-valued precedences between the TPT nodes i ¼ 1; . . . ;n andthe corresponding activity–scenario nodes p ¼ snþ i; s 2 S. Thisguarantees that activities are not started before their TPTs. Forevery precedence ði; jÞ 2 E, we add to CðsÞ a precedence of valueds

ij between p ¼ snþ i and q ¼ snþ j for every scenario s 2 S. Thisensures that CðsÞ obeys the original precedence relations of � inall scenarios. Fixations ði; j; sÞ 2 V2 � S are modeled as tight maxi-mum time lags between the respective nodes in eV . Satisfaction of

the project deadline, finally, is ensured by adding maximum timelags of duration D between 0 and snþ n for all scenarios s 2 S. Sum-ming up, eE and ~d are defined as follows:eE :¼ fð0; iÞ : i ¼ 1; . . . ;ng [ fði; snþ iÞ : i 2 V ; s 2 Sg[ fðsnþ i; iÞ : ði; i; sÞ 2 sg [ fðsnþ i; snþ jÞ : ði; jÞ 2 E; s 2 Sg[ fðsnþ j; snþ iÞ : ði; j; sÞ 2 s; i – jg [ fðsnþ n;0Þ : s 2 Sg; ð9Þ

~dpq :¼

dsij if p ¼ snþ i; q ¼ snþ j; ði; jÞ 2 E andðj; i; sÞ R s;�ds

ji if p ¼ snþ i; q ¼ snþ j; ði; jÞ 2 E andðj; i; sÞ 2 s;�D if p ¼ snþ n; q ¼ 0 and s 2 S;

0 otherwise:

8>>>><>>>>:ð10Þ

Note that in case both an ordinary precedence (inherited from � )and a fixation exist between two nodes in eV , the latter constraintmust be more restrictive since otherwise it would not have beenadded to s. Hence, the definition of ed ignores the precedence from� in such cases. The construction of CðsÞ for a simple example pro-ject and s0 ¼ ; (the root node of T) is shown in Fig. 3, while the fix-ation process is illustrated in Fig. 4.

The following theorem establishes the link between � ðsÞ andCðsÞ.

Theorem 4.3. Consider a problem instance � ¼ ðG; S; p; f; d;D; bÞ, atree node s 2T and the deterministic NPV maximization problemCðsÞ ¼ ðeG;~f; ~d; bÞ as defined in (7)–(10) . Let ~x be an optimal solutionfor CðsÞ, where ~xp denotes the start time of activity p 2 eV . Then

ð~x1; . . . ; ~x~nÞ 2 arg maxff ðr; xÞ : ðr; xÞ 2 Ysg:

Proof. Under the natural identification

ðð~x1; . . . ; ~xnÞ; ð~xnþ1; . . . ; ~x~nÞÞ ¼ ððr1; . . . ; rnÞ; ðx1; . . . ; xnmÞÞ ¼ ðr; xÞ;

the feasible sets of CðsÞ and � ðsÞ coincide. Furthermore, the objec-tive value of ex in CðsÞ equals the objective value of ðr; xÞ in � ðsÞ. h

Page 8: Maximizing the Net Present Value of a Project Under Uncertainty

7 See http://www.wior.uni-karlsruhe.de/LS_Neumann/Forschung/ProGenMax.

W. Wiesemann et al. / European Journal of Operational Research 202 (2010) 356–367 363

4.2. Warm-start technique

A non-root node s0 differs from its ancestor s 2 ATðs0Þ by ex-actly one fixation. Hence, an optimal solution for � ðsÞ is likely tobe very similar to an optimal solution for � ðs0Þ. This property car-ries over to the optimal solutions of the deterministic NPV maximi-zation problems CðsÞ and Cðs0Þ. This similarity of nodal solutions istypical for branch-and-bound algorithms and is exploited bywarm-start techniques. In our context, this means that at node s0we should warm-start Neumann’s and Zimmermann’s algorithm(hereafter referred to as NZ) with an optimal solution for CðsÞ.The hope is that the procedure requires significantly fewer itera-tions than if we apply it to a standard initial solution.

Let us elaborate this idea. Assume that s0 n s ¼ fði; j; sÞg forði; jÞ 2 Eþ; the case s0 n s ¼ fðj; j; sÞg for j 2 V is analogous. The pre-cedence that relates i and j is more constraining in Cðs0Þ than it is inCðsÞ. The modified precedence is not fulfilled by the optimal solu-tion found for CðsÞ, for otherwise ði; j; sÞ R Vs in Step 4 of ourbranch-and-bound algorithm and hence ði; j; sÞ R s0 n s. Since NZ isa variant of the network simplex algorithm, it has to be startedfrom a (primal) feasible solution. If we enforced fixationði; j; sÞ 2 s0 n s as a hard constraint, we would need to specify a fea-sible initial solution for Cðs0Þ. Instead, we incorporate it implicitlyby penalizing its violation in the objective function:

gpð~xÞ :¼ gð~xÞ þ p b~xsnþj � b~xsnþiþdsij

� �:

Here, g denotes the objective function of problem CðsÞ, while gpconstitutes the penalized function for some penalty factor p > 0.Note that ~xsnþj P ~xsnþi þ ds

ij holds for all feasible solutions of CðsÞand Cðs0Þ because the respective minimum time lag is enforced inboth problems. Hence, gpð~xÞ 6 gð~xÞ for all feasible solutions ~x, andgpð~xÞ ¼ gð~xÞ if and only if ~xsnþj ¼ ~xsnþi þ ds

ij, that is, if ~x obeys thenew fixation ði; j; sÞ 2 s0 n s. Note also that the penalized objectivefunction gp can be obtained from g by merely modifying two cashflows in CðsÞ:

~fp;p :¼

~fp � pbdsij if p ¼ snþ i;

~fp þ p if p ¼ snþ j;

~fp otherwise:

8>><>>: ð11Þ

Hence, we can solve the penalty formulation by applying NZ to theslightly modified problem instance CpðsÞ ¼ ðeG;~fp;

~d;bÞ. The follow-ing theorem shows how this penalty formulation relates to Cðs0Þ:

Theorem 4.4. Consider a problem instance � ¼ ðG; S; p; f; d;D; bÞ ands; s0 2 V2 � S, where Ys – ; and s0 n s ¼ fði; j; sÞg; ði; jÞ 2 Eþ. More-over, define CpðsÞ ¼ ðeG;~fp; ~d; bÞ as in (7)–(11). Then there exists ap0 P 0 such that for all p P p0, the optimal solution ~x of CpðsÞ foundby NZ satisfies

(i) ~xsnþj ¼ ~xsnþi þ dsij () ~x 2 arg max Cðs0Þ;

(ii) ~xsnþj – ~xsnþi þ dsij () Cðs0Þ is infeasible.

Proof. We can assume that Y� \Ysij – ; since otherwise the asser-

tion trivially holds for any p0 P 0. Grinold’s variable substitutiontransforms Cð;Þ to an equivalent LP. Being a derivate of the net-work simplex algorithm, NZ always terminates at a vertex of thisLP, which in turn corresponds to a vertex of Y� [30]. Moreover,by the nature of the hyperplane fixations, the application of NZto CðsÞ (and hence CpðsÞ) always terminates in a vertex of Y� ,too. Let V be the finite set containing all vertices of Y� that donot lie on the hyperplane Ys

ij. We can assume V – ; since other-wise the assertion is trivially satisfied for any p0 P 0. For everyv 2V, we can determine a finite pv such that for all p P pv ,

gpðvÞ < min gpð~zÞ : ~z 2 Y� \Ysij

n o:

Existence of pv follows from the fact that Y� is compact and g isbounded.

Set p0 ¼ maxv2Vpv and choose any p P p0. If the optimalsolution ~x of CpðsÞ lies on the hyperplane Ys

ij, it is optimal amongall elements of Ys \Ys

ij. Since gp coincides with g on Ysij; ~x must

then be optimal for Cðs0Þ. If, on the other hand, ~x R Ysij, the choice of

p implies that Ys \Ysij ¼ ;, which is equivalent to Ys0 ¼ ;. The

reverse implications, finally, hold by definition. h

In practice, we do not need to choose p explicitly to solveCpðsÞ. Indeed, if we employ NZ to solve CpðsÞ, the values of allcash flows and dual variables in the algorithm description (see[30]) are of the form aþ pb for a; b 2 R. Hence, we can employa variant of NZ that operates on tuples of cash flows and dualvariables, where tuple ða; bÞ corresponds to the value aþ pb forsome undefined but sufficiently large p. The algorithm descrip-tion from [30] remains valid, the only differences being that (i)operations on cash flows and dual variables are performed en-try-wise and (ii) the variable that leaves the dual basis is chosenin lexicographic order. This is reminiscent of the Big-M method inlinear programming [38].

Once we have obtained an optimal solution for CpðsÞ, we caneither discard tree node s0 (in case infeasibility has been detected)or update the time lag ~dpq; p ¼ snþ j and q ¼ snþ i, indexed bys0 n s ¼ fði; j; sÞg. This allows us to use the optimal solution ofCpðsÞ not just for the upper bound of node s0, but also as an initialsolution for s00 2 DTðs0Þ. The imposition of a tight maximum timelag between p and q entails that we do not require the introducedpenalty terms anymore but can rather reuse the original cash flowsf in subsequent iterations of the branch-and-bound procedure.

5. Numerical results

In the first part of this section, we compare TPT policies withalternative policy classes for the stochastic NPV maximizationproblem. In the second part, we report on the scalability of oursolution procedure and assess its performance as compared to ageneral purpose optimization package.

Apart from the illustrative example at the beginning of Section5.1, all considered test instances are randomly constructed with anadapted version of the project generator ProGen/max [29], which isknown to generate difficult project instances. For the constructionof the project structure, we adopt the parameter values used in theUBO instances of the PSP/max benchmark library7 (scaled to therespective problem size). For every scenario, the activity cash flowsare sampled from a uniform distribution on [�100,100], while thedurations of the minimum time lags are selected from a uniform dis-tribution with support [1,10]. As for the maximum time lags, let ds

ij

denote the start time difference between activities i and j in scenarios 2 S of the early start schedule. If the project structure (as obtainedfrom ProGen/max) prescribes a maximum time lag between i and j,we set its duration in scenario s to hijd

sij, where hij is chosen from a

uniform distribution with support ½h; �h�. The parameters h and �h de-scribe the tightness of maximum time lags; their values will be spec-ified later. Similarly, we choose a value of hmaxs2SD

s for the projectdeadline, where Ds denotes the minimum makespan for scenarios 2 S and h is sampled from a uniform distribution on ½h; �h�. The de-scribed generation procedure ensures that feasible TPT policies existfor all instances. Throughout this section, we employ a discount fac-tor of 0.9675.

Page 9: Maximizing the Net Present Value of a Project Under Uncertainty

Table 1Example project with three scenarios and occurrence probabilities p ¼ ð0:3; 0:2;0:5Þ. Specified are the durations ds

i of activities i 2 V in scenarios s 2 S, the corresponding cashflows zs

i which are realized at the activity completion times and their discounted equivalents fsi at the activity start times.

Scenario 1 Scenario 2 Scenario 3

d1i z1

i f1i d2

i z2i f2

i d3i z3

i f3i

Activity 1 9 �99.6 �74.0 3 61.0 55.2 3 43.9 39.8Activity 2 5 80.7 68.4 6 145.7 119.5 4 �126.3 �110.7Activity 3 5 �136.4 �115.6 6 4.5 3.7 3 �78.1 �70.7Activity 4 7 �28.6 �22.7 8 74.6 57.3 10 172.3 123.8Activity 5 6 �32.7 �26.8 3 �92.6 �83.9 8 �37.4 �28.7

Fig. 6. The (standardized) problem instance � for the project described by Table 1and Fig. 5. The triples of numbers attached to the arcs represent the values of thecorresponding precedences in the three scenarios. The cash flow vector f is given inTable 1.

364 W. Wiesemann et al. / European Journal of Operational Research 202 (2010) 356–367

5.1. TPT policies and alternative problem formulations

Consider the example project encoded through the data in Table1 and Fig. 5. In order to obtain the corresponding problem instance� (see Section 3), we apply the following transformations: (i) wediscount the cash flows to the activity start times; (ii) we convertthe maximum time lags to minimum time lags between the activ-ity start times; and (iii) we introduce an artificial sink node. Theresulting project graph is illustrated in Fig. 6.

For a deadline of D ¼ 30, the optimal TPT policy isr� ¼ ð0;12;18;3;22Þ. Here and in the remainder of this section,we suppress the artificial sink node in the results. Policy r� hasan expected NPV of 6.25, which results from NPVs of �121.2,151.6 and 24.6 in scenarios 1, 2 and 3, respectively. The corre-sponding schedules are presented in Fig. 7. We can identify thetendency to schedule activities 1 and 4 early, whereas activities 3and 5 are delayed. This is in line with the expected cash flows ofthe activities. Note that activity 2 has a negative expected cashflow and should as such be scheduled late. We cannot assign aTPT larger than 12 to it, however, since otherwise the maximumtime lag between activities 1 and 3 would be violated in scenario 2.

Our formulation properly takes into account uncertainty but re-sults in a difficult optimization problem. Hence, it is tempting torelax the computational burden by solving a simplified model toobtain a feasible schedule with an acceptable expected NPV. Inthe following, we compare TPT policies with three alternative ap-proaches, namely rigid policies, nominal TPT policies and activitydelay policies obtained from Benati’s two-stage approach (see Sec-tion 2). Rigid policies stipulate scenario-independent activity starttimes that satisfy the minimum and maximum time lags in all sce-narios. Contrary to TPT policies, rigid policies never require activi-ties to be delayed beyond their specified start times. Optimal rigidpolicies can be determined by solving a deterministic NPV maximi-zation problem which contains the time lags of all scenarios. Nom-inal TPT policies are obtained from a deterministic NPVmaximization problem with expected values for both the uncertaintime lags and the cash flows. The solution of this deterministicproblem can be interpreted as a TPT policy: every activity is startedas early as possible, but never before its start time in the nominal

Fig. 5. Structure of the example project in the notation of [11]. For i 2 V , node is (if) reprearc from node i to node j describes the minimum amount of time that event i must be realactivity 5 must start at most 7 time units after activity 3 has been completed.

solution. Even if the optimization problem which determines anoptimal nominal policy is feasible, the resulting TPT policy maybe infeasible due to the use of expected time lags. Note that by con-struction, both rigid and nominal policies form subsets of the classof TPT policies, and as such they can never lead to better schedulesthan the optimal TPT policy as determined by model (2). Activitydelay policies are discussed in Section 2.

For our example, the optimal rigid policy corresponds to theactivity start vector (0,10,16,9,22) and an expected NPV of �9.5.The optimal nominal policy is r� ¼ ð0;14:7;19:4;4:8;23:6Þ; thispolicy is infeasible, however, because the deadline is violated inscenarios 1 and 3, and the maximum time lag between activities1 and 3 is exceeded in scenarios 2 and 3. Hence, the nominal policyleads to infeasible schedules in all scenarios. The activity delay pol-icy determined by Benati’s two-stage approach, finally, results inan expected NPV of 3.7.

Let us now determine project schedules for a whole range ofdeadlines. Plotting the expected NPVs versus the underlying dead-lines results in a nondecreasing curve that can be interpreted asthe efficient frontier of the respective policy class. The efficientfrontiers of the TPT, rigid and nominal policies, as well as Benati’sactivity delay policies, are shown in Fig. 8. The TPT schedules arefeasible for all considered deadlines and outperform all other

sents the start (completion) event of activity i. The triple of numbers attached to anized before event j in the three scenarios: the arc (5s,3f), for example, stipulates that

Page 10: Maximizing the Net Present Value of a Project Under Uncertainty

Fig. 7. Gantt charts for the optimal TPT policy. The horizontal axis represents thetime elapsed since project start, while the vertical axis lists the project activities.Arrows between the activities indicate ordinary (finish–start) precedences, whereasmaximum time lags are visualized by bars above the respective chart.

-15

-10

-5

0

5

10

25 30 35 40 45 50 55

expe

cted

NPV

project deadline

TPT policyBenati’s policy

rigid policy

Fig. 8. Efficient frontiers of TPT and rigid policies, as well as Benati’s activity delaypolicies. Nominal policies result in infeasible schedules for all considered deadlines.

8 CPLEX is a registered trademark of ILOG, Inc.

W. Wiesemann et al. / European Journal of Operational Research 202 (2010) 356–367 365

schedules. Activity delay policies perform only slightly worse thanTPT policies for deadlines below 36 time units but become infeasi-ble for larger deadlines. This undesirable effect is caused by theapproximation of a stochastic problem by a deterministic one inBenati’s two-stage approach (see Section 2) and cannot occur forthe TPT policies determined by our procedure. The class of rigidpolicies provides feasible solutions for deadlines above 29 timeunits, but the resulting schedules perform substantially worse thanthe TPT schedules. Nominal policies, finally, yield infeasible sched-ules for all considered deadlines.

Since the findings from one single test instance may not be rep-resentative, we compare the performance of the aforementionedpolicy classes on 500 random test instances. Every instance accom-modates 3 scenarios and 10 activities and is constructed accordingto the specification outlined in the beginning of Section 5 withðh; �hÞ ¼ ð1:25;1:50Þ. For the resulting test set, feasible TPT policiesexist in 493 cases (98.6%). In contrast, feasible rigid policies canbe determined for 258 instances (51.6%), feasible nominal policiesfor 148 instances (29.6%), and Benati’s approach leads to feasible

activity delay policies in 303 cases (60.6%). For those cases wherefeasible policies have been found, Table 2 compares the resultingexpected NPVs. It becomes apparent that optimal TPT policies out-perform the other policy classes on the chosen test set. Althoughnominal and activity delay policies perform reasonably well on in-stances where they lead to feasible schedules, they are of limiteduse due to frequent infeasibilities.

5.2. Performance of the branch-and-bound procedure

In this section, we investigate the performance of our branch-and-bound procedure and compare it with CPLEX 11.2, a state-of-the-art mixed-integer linear programming solver.8 We also ana-lyze the change in complexity when some of the problem parame-ters are varied.

We first generate random test instances of problem (2) with 10scenarios, ðh; �hÞ ¼ ð1:25;1:5Þ and 10,20, . . . ,50 activities (minimumtime lags) according to the specification in the beginning of Section5. For every project size, we solve 100 instances with an implemen-tation of our branch-and-bound procedure and CPLEX 11.2 on aquad-core Intel Xeon system with 2.33 gigahertz clock speed. In or-der to solve problem (2) with CPLEX, we reformulate constraint set(2b) via special ordered sets of type 1 [42] to obtain a mixed-inte-ger linear program. For every instance, we limit the runtime ofboth CPLEX and our procedure to 10 minutes and allow an opti-mality gap of 1%. In case an instance is not solved within this time,the respective optimization run is considered unsuccessful and werecord the incurred optimality gap. Table 3 summarizes the test re-sults. As expected, larger problem instances are more difficult tosolve with either method. Nevertheless, our procedure was ableto find optimal solutions for the majority of the test instances. Incases where an optimal solution could not be secured, the proce-dure determined feasible TPT policies with moderate optimalitygaps. CPLEX, on the other hand, failed to find feasible TPT policiesfor a large percentage of the test instances. Indeed, 10 minutes run-time only proved sufficient for small instances with up to 20 activ-ities. We conclude that the proposed branch-and-bound procedurecompares favorably to standard mixed-integer linear programmingsolvers.

We now investigate the impact of two important problemparameters, namely the number of scenarios and the tightness ofmaximum time lags. To this end, we first consider test instanceswith 30 activities, ðh; �hÞ ¼ ð1:25;1:5Þ and 5, 10, 20 and 30 scenarios.Table 4 summarizes the performance of our branch-and-boundprocedure for this test set. As expected, the difficulty of problem(2) increases with the number of scenarios. Although the time limitis not sufficient to guarantee optimality for problem instances with20–30 scenarios, our solution procedure consistently determinedfeasible TPT policies with moderate optimality gaps. Let us nowconsider problem instances with 30 activities, 10 scenarios andvarying values of ðh; �hÞ. Table 5 shows that tighter maximum timelags (and project deadlines) increase the difficulty of problem (2).Further investigations revealed that tighter maximum time lags re-duce the set of feasible TPT policies, which in turn entails that thesolutions ðr̂; x̂Þ corresponding to the nodal upper bounds (see Step 3of our branch-and-bound procedure) are more likely to violateconstraint set (2b). This, however, results in a less effective pruningof the branch-and-bound tree T since the nodal upper bounds dif-fer largely from the objective values of feasible TPT policies. Never-theless, our solution procedure determined optimal or near-optimal TPT policies for all considered settings.

Page 11: Maximizing the Net Present Value of a Project Under Uncertainty

Table 2NPV gains of TPT policies over rigid policies, nominal policies and Benati’s activity delay policies. The entries represent the relative increase in expected NPV when optimal TPTpolicies are employed instead of the policy class printed in front of the respective row. qa denotes the a-quantile over the considered instances.

q0:1 (%) q0:25 (%) q0:5 (%) q0:75 (%) q0:9 (%)

Rigid policies 5.35 8.93 16.02 30.24 63.66Nominal policies 1.71 2.17 4.74 7.64 13.47Act. delay policies �16.65 �3.72 2.50 23.43 49.32

Table 3Performance of our procedure and CPLEX for various instance sizes. Columns 2–4 describe the numbers of instances for which optimal TPT policies, suboptimal but feasible TPTpolicies, and no feasible TPT policies have been determined, respectively. The remaining columns document the runtimes and optimality gaps (in order) by the 0.25, 0.5 and 0.75-quantiles. For every instance size, the first and second row describe the results of our procedure and CPLEX, respectively.

Size Opt. Feas. No. sol. Runtimes (seconds) Optimality gaps (%)

q0:25 q0:5 q0:75 q0:25 q0:5 q0:75

10 98 2 0 0.00 0.04 0.57 1.3 1.5 1.5100 0 0 0.08 0.13 0.41 n/a n/a n/a

20 82 18 0 0.09 0.70 47.29 3.1 5.8 7.879 11 10 2.20 20.20 398.96 5.5 172.8 1

30 74 26 0 0.11 10.84 600.00 2.1 4.9 10.327 12 61 256.42 600.00 600.00 1 1 1

40 73 27 0 0.14 13.04 600.00 1.9 6.0 11.519 6 75 600.00 600.00 600.00 1 1 1

50 69 31 0 0.11 15.36 600.00 3.0 5.0 14.32 2 96 600.00 600.00 600.00 1 1 1

Table 4Impact of the number of scenarios (first column) on the complexity of the problem instances. All instances exhibit 30 activities and ðh; �hÞ ¼ ð1:25;1:5Þ.

Scenarios Opt. Feas. No sol. Runtimes (seconds) Optimality gaps (%)

q0:25 q0:5 q0:75 q0:25 q0:5 q0:75

5 98 2 0 0.01 0.14 1.6 4.5 4.8 4.810 74 26 0 0.11 10.84 600.00 2.1 4.9 10.320 34 66 0 58.90 600.00 600.00 3.0 6.6 21.130 22 77 1 600.00 600.00 600.00 4.2 7.0 20.7

Table 5Impact of the maximum time lag and deadline tightness ðh; �hÞ on the complexity of the problem instances. All instances exhibit 30 activities and 10 scenarios.

Tightness Opt. Feas. No sol. Runtimes (seconds) Optimality gaps (%)

q0:25 q0:5 q0:75 q0:25 q0:5 q0:75

[1.00,1.25] 67 33 0 0.79 21.55 600.00 2.7 5.1 13.2[1.25,1.50] 74 26 0 0.11 10.84 600.00 2.1 4.9 10.3[1.50,1.75] 78 22 0 0.09 8.62 282.06 1.8 4.9 7.9[1.75,2.00] 88 12 0 0.01 0.25 11.05 2.0 4.9 6.6

366 W. Wiesemann et al. / European Journal of Operational Research 202 (2010) 356–367

6. Conclusion

We proposed a model for maximizing the expected NPV of aproject under uncertainty and developed a branch-and-boundalgorithm for its solution. We illustrated the favorable perfor-mance of the model and demonstrated the superiority of the sug-gested solution algorithm over a state-of-the-art solver.

There is common agreement that in practice, project managersface significant uncertainty. Our tests reveal that a rigorous treat-ment of uncertainty is necessary in order to avoid infeasible or se-verely suboptimal schedules. Properly accounting for uncertainty,however, inevitably leads to computationally challenging prob-lems, even when resource restrictions are disregarded. Thus, ourresearch highlights the need for suitable heuristics that allow theapproximate solution of large-scale (and possibly resource con-strained) problem instances.

Apart from the development of heuristic solution procedures,we identify two promising directions for future work. Firstly,although being a popular decision criterion in the project schedul-ing literature, maximizing the expected revenues seems to be inconflict with the non-recurring nature of projects and the risk aver-sion of decision makers. This problem can be alleviated by map-ping cash flows to utilities (see Section 3), but the resultingdecision criterion seems difficult to interpret. Both our modeland the suggested solution procedure can be extended to maxi-mize the conditional value-at-risk of the NPV. The conditional va-lue-at-risk is a popular and well understood risk measure in thefinancial literature [33]. Secondly, formulating and solving the sto-chastic NPV maximization problem as a multi-stage stochastic pro-gram with decision-dependent structure would be of interest.Albeit intractable for realistic problem sizes, such a formulationwould allow the precise quantification of suboptimality incurred

Page 12: Maximizing the Net Present Value of a Project Under Uncertainty

W. Wiesemann et al. / European Journal of Operational Research 202 (2010) 356–367 367

from the restriction to policy classes such as TPT and activity delaypolicies.

Acknowledgements

The authors wish to express their gratitude to the referees fortheir constructive criticism which led to substantial improvementsof the article. Furthermore, the first author acknowledges financialsupport from EPSRC Grant EP/C513584/1.

References

[1] S. Benati, An optimization model for stochastic project networks with cashflows, Computational Management Science 3 (4) (2006) 271–284.

[2] P. Brucker, A. Drexl, R. Möhring, K. Neumann, E. Pesch, Resource-constrainedproject scheduling: Notation classification models and methods, EuropeanJournal of Operational Research 112 (1) (1999) 3–41.

[3] A.H. Buss, Sequential experimentation for estimating the optimal delay ofactivities in PERT networks, in: C. Alexopoulos, K. Kang, W.R. Lilegdon, D.Goldsman (Eds.), Proceedings of the 1995 Winter Simulation Conference, 1995,pp. 336–340.

[4] A.H. Buss, M.J. Rosenblatt, Activity delay in stochastic project networks,Operations Research 45 (1) (1997) 126–139.

[5] X. Chen, M. Sim, P. Sun, A robust optimization perspective on stochasticprogramming, Operations Research 55 (6) (2007) 1058–1071.

[6] I. Cohen, B. Golany, A. Shtub, The stochastic time-cost tradeoff problem: Arobust optimization approach, Networks 49 (2) (2007) 175–188.

[7] E.L. Demeulemeester, W.S. Herroelen, Project Scheduling – A ResearchHandbook, Kluwer Academic Publishers, 2002.

[8] S.E. Elmaghraby, On the fallacy of averages in project risk management,European Journal of Operational Research 165 (2) (2005) 307–313.

[9] S.E. Elmaghraby, W.S. Herroelen, The scheduling of activities to maximize thenet present value of projects, European Journal of Operational Research 49 (1)(1990) 35–49.

[10] S.E. Elmaghraby, J. Kamburowski, On project representation and activity floats,Arabian Journal of Science and Engineering 15 (4B) (1990) 626–637.

[11] S.E. Elmaghraby, J. Kamburowski, The analysis of activity networks undergeneralized precedence relations (GPRs), Management Science 38 (9) (1992)1245–1263.

[12] P.C. Fishburn, Utility Theory for Decision Making, John Wiley & Sons, 1970.[13] V. Goel, I.E. Grossmann, A class of stochastic programs with decision

dependent uncertainty, Mathematical Programming 108 (2–3) (2006) 355–394.

[14] T.J. Gordon, H. Hayward, Initial experiments with the cross-impact matrixmethod of forecasting, Futures 1 (2) (1968) 100–116.

[15] R.C. Grinold, The payment scheduling problem, Naval Research LogisticsQuarterly 19 (1) (1972) 123–136.

[16] J.N. Hagstrom, Computational complexity of PERT problems, Networks 18 (2)(1988) 139–147.

[17] H. Heitsch, W. Römisch, Scenario reduction algorithms in stochasticprogramming, Computational Optimization and Applications 24 (2–3) (2003)187–206.

[18] R. Henrion, C. Küchler, W. Römisch, Scenario reduction in stochasticprogramming with respect to discrepancy distances, ComputationalOptimization and Applications (2007).

[19] W.S. Herroelen, P. Van Dommelen, E.L. Demeulemeester, Project networkmodels with discounted cash flows – A guided tour through recentdevelopments, European Journal of Operational Research 100 (1) (1997) 97–121.

[20] W.S. Herroelen, R. Leus, Project scheduling under uncertainty: Survey andresearch potentials, European Journal of Operational Research 165 (2) (2005)289–306.

[21] T.W. Jonsbråten, R.J.-B. Wets, D.L. Woodruff, A class of stochastic programswith decision dependent random elements, Annals of Operations Research 82(1998) 83–106.

[22] T. Jørgensen, S.W. Wallace, Improving project cost estimation by taking intoaccount managerial flexibility, European Journal of Operational Research 127(2) (2000) 239–251.

[23] P. Kall, S.W. Wallace, Stochastic Programming, John Wiley & Sons, 1994.[24] P. Kouvelis, G. Yu, Robust Discrete Optimization and its Applications, Kluwer

Academic Publishers, 1997.[25] V.G. Kulkarni, V.G. Adlakha, Markov and Markov-regenerative PERT networks,

Operations Research 34 (5) (1986) 769–781.[26] D.G. Malcolm, J.H. Roseboom, C.E. Clark, W. Fazar, Application of a technique

for research and development program evaluation, Operations Research 7 (5)(1959) 646–669.

[27] R. Möhring, F. Stork, Linear preselective policies for stochastic projectscheduling, Mathematical Methods of Operations Research 52 (3) (2000)501–515.

[28] R.H. Möhring, Computational Discrete Mathematics, Scheduling underUncertainty: Bounding the Makespan Distribution, Springer, 2001.

[29] K. Neumann, C. Schwindt, J. Zimmermann, Project Scheduling with TimeWindows and Scarce Resources, Springer, 2003.

[30] K. Neumann, J. Zimmermann, Procedures for resource leveling and net presentvalue problems in project scheduling with general temporal and resourceconstraints, European Journal of Operational Research 127 (2) (2000) 425–443.

[31] L. Özdamar, On scheduling project activities with variable expenditure rates,IIE Transactions 30 (8) (1998) 695–704.

[32] L. Özdamar, H. Dündar, A flexible heuristic for a multi-mode capitalconstrained project scheduling problem with probabilistic cash inflows,Computers and Operations Research 24 (12) (1997) 1187–1200.

[33] R.T. Rockafellar, S. Uryasev, Optimization of conditional value-at-risk, Journalof Risk 2 (3) (2000) 21–41.

[34] A.H. Russell, Cash flows in networks, Management Science 16 (5) (1970) 357–373.

[35] P.J.H. Schoemaker, Scenario planning: A tool for strategic thinking, SloanManagement Review 36 (2) (1995) 25–40.

[36] A. Scholl, Robuste Planung und Optimierung – Grundlagen, Konzepte undMethoden, Experimentelle Untersuchungen, Physica-Verlag, 2001 (InGerman).

[37] C. Schwindt, J. Zimmermann, A steepest ascent approach to maximizing thenet present value of projects, Mathematical Methods of Operations Research53 (3) (2001) 435–450.

[38] H.A. Taha, Operations Research: An Introduction, sixth ed., Prentice-Hall, 1997.[39] L.V. Tavares, J.A.A. Ferreira, J.S. Coelho, On the optimal management of project

risk, European Journal of Operational Research 107 (2) (1998) 451–469.[40] V. Tilson, M.J. Sobel, J.G. Szmerekovsky, Scheduling projects with stochastic

activity duration to maximize EPV, Technical Memorandum No. 812, CaseWestern Reserve University, 2006.

[41] J. Wang, Z. Wu, Y. Sun, Optimum activity delay in stochastic activity networks,in: W. Kubiak, C.-Y. Lee, J. Weglarz, R. Willis (Eds.), Proceedings of the 7thInternational Workshop on Project Management and Scheduling, 2000.

[42] H.P. Williams, Model Building in Mathematical Programming, John Wiley &Sons, 1999.