optimal project portfolio execution690725/fulltext01.pdf · optimal project portfolio execution:...

66
Optimal Project Portfolio Execution Computer Implementation of Models and Simulation Framework ELHABIB MOUSTAID Master of Science Thesis Stockholm, Sweden 2014

Upload: others

Post on 26-Jul-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Optimal Project Portfolio Execution

Computer Implementation of Models and Simulation Framework

E L H A B I B M O U S T A I D

Master of Science Thesis Stockholm, Sweden 2014

Page 2: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s
Page 3: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Optimal Project Portfolio Execution

Computer Implementation of Models and Simulation Framework

E L H A B I B M O U S T A I D

Master’s Thesis in Optimization and Systems Theory (30 ECTS credits) Master Programme in Computer Science and Engineering (300 credits)

Royal Institute of Technology year 2014 Supervisor at KTH was Per Enqvist Examiner was Per Enqvist

TRITA-MAT-E 2014:09 ISRN-KTH/MAT/E--14/09--SE Royal Institute of Technology School of Engineering Sciences KTH SCI SE-100 44 Stockholm, Sweden URL: www.kth.se/sci

Page 4: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s
Page 5: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

iii

Abstract

This thesis work presents both mathematical models and a simulation ap-proach to get more insight to the R&D Project Portfolio Execution problem.It gives special care to finding the optimal number of projects to run simulta-neously in a portfolio in order to get the maximum monetary gain, and givethe factors that affect the most this number. This report tries as well to givethe best simulation of resources behaviour inside an R&D department, andtakes a stage-gate model for the projects. The proposed mathematical modelis a Non-Linear Mixed Integer Program that is hard to solve. A simplificationlead to a less complicated Mixed Integer Program that is easier to solve. Butin order to have an insight of the whole complexity of the problem, a simula-tion platform has been implemented. Thanks to its low computation cost, itallowed to have a big number of simulations and draw some conclusions aboutthe initial question. The simulation platform also allows to see the influence ofdifferent factors on the number of projects that should be executed in parallelin R &D departments, which was hard to do using the mathematical models.

Page 6: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s
Page 7: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

iv

Sammanfattning

Detta examensarbete presenterar både matematiska modeller och en si-muleringsplattform för att få mer insikt i R & D Project Portfolio Executionproblem. Målet är att beräkna det optimala antalet projekt att köra samtidigti en portfölj och hitta de faktorer som har störst påverkan på detta. Rappor-ten försöker också att ge den bästa simuleringen av resursersbeteende i R &D avdelningar. Den föreslagna matematiska modellen är ett icke-linjärt MixedInteger Program som är svårt att lösa. En simplifiering leder till en mindrekomplicerad Mixed Integer Program som är lättare att lösa, men för att få eninblick i hela problemets komplexitet har en simuleringsplattform implemente-rats. Tack vare dess låga beräkningskostnad, är det möjligt att köra ett stortantal simuleringar och dra vissa slutsatser om den inledande frågan. Använ-dandet av en simuleringsplattform gör det också möjligt att se påverkan avolika faktorer på antalet projekt som ska köras parallellt i R & D -avdelningar,som hade varit svårt att göra med matematisk modellering.

Page 8: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s
Page 9: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

v

Résumé

Ce travail présente à la fois des modèles mathématiques et une plateformede simulation qui visent à répondre à la question du nombre de projets à exé-cuter simultanément dans les départements R&D des grandes organisations. Ila aussi pour but de donner les facteurs déterminant ce nombre.

Une grande importance est donnée aux ressources humaines, leurs qualités,leurs comportements au sein des environnements où elles travaillent et leursefficacités dans l’exécution de leurs tâches. En plus des chefs de projet au seind’Atlas Copco Rock Drills, des consultants d’une boîte de conseil, Level 21Management AB, ont contribué par leurs expériences à simuler de la meilleurefaçon le comportement des ressources humaines.

Mathématiquement, un programme non-linéaire représentant toute la com-plexité du problème a été présenté en premier lieu. Toutefois, la complexité dece programme a obligé à le réduire à un programme entier mixte, abordablepour des petites configurations.

Mais pour tenir compte de toute la complexité du problème, il a été né-cessaire d’implémenter une plateforme de simulation. Cette plateforme n’estpas exigeante en termes de calcul et un grand nombre de simulations a pu êtreeffectué.

Cela a finalement permis d’obtenir quelques réponses à la question initiale.En effet, le nombre de projets à lancer en parallèle dans un département R&Da été estimé avec quelques approximations. Les facteurs déterminant ce nombreont également été identifiés.

Certains aspects importants pour la bonne exécution des projets en dé-partement R&D ont également été abordés grâce à la simulation, tels que lasensibilité à l’attribution des tâches aux ressources, le choix des stratégies, etl’effet destructif du manque de ressources de certaines compétences.

Page 10: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s
Page 11: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Contents

Contents vi

1 Introduction 1

2 Literature review 3

3 Problem formulation 5

I Model Details and Mathematical Formulations 7

4 Model details 94.1 Portfolio description . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

4.1.1 Resource . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94.1.2 Project . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

4.2 Efficiency of resources . . . . . . . . . . . . . . . . . . . . . . . . . . 104.2.1 Multi-Project . . . . . . . . . . . . . . . . . . . . . . . . . . . 104.2.2 Group size effect . . . . . . . . . . . . . . . . . . . . . . . . . 104.2.3 Ramping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114.2.4 Learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114.2.5 Resource knowledge . . . . . . . . . . . . . . . . . . . . . . . 12

5 Model mathematical formulation 135.1 The mathematical model . . . . . . . . . . . . . . . . . . . . . . . . . 13

5.1.1 Nomenclature . . . . . . . . . . . . . . . . . . . . . . . . . . . 135.1.2 Equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

5.2 Significant simplification . . . . . . . . . . . . . . . . . . . . . . . . . 165.2.1 Nomenclature . . . . . . . . . . . . . . . . . . . . . . . . . . . 165.2.2 Equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

II The Simulation Approach 19

6 Simulation motivation and description 21

vi

Page 12: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

CONTENTS vii

6.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216.2 Simulation description . . . . . . . . . . . . . . . . . . . . . . . . . . 216.3 Portfolio execution strategies . . . . . . . . . . . . . . . . . . . . . . 22

6.3.1 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226.3.2 Implemented strategies . . . . . . . . . . . . . . . . . . . . . 22

6.4 Steady state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226.4.1 Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226.4.2 Portfolio evaluation . . . . . . . . . . . . . . . . . . . . . . . 22

6.5 Allocation of resources and efficiency calculation . . . . . . . . . . . 23

IIIResults and Conclusions 25

7 Results from the mathematical model 277.1 The behaviour of the obtained optimal solution . . . . . . . . . . . . 277.2 Sensitivity to model parameters . . . . . . . . . . . . . . . . . . . . . 28

8 Results of the simulation 318.1 Computational work . . . . . . . . . . . . . . . . . . . . . . . . . . . 318.2 Gain components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318.3 Randomness /Seeds . . . . . . . . . . . . . . . . . . . . . . . . . . . 328.4 Steady state . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338.5 Strategy choice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348.6 Portfolio size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348.7 Bottlenecks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348.8 Sensitivity to resources choice . . . . . . . . . . . . . . . . . . . . . . 358.9 Optimality as a function of available workforce and demands . . . . 36

9 Discussion and conclusions 379.1 The mathematical model . . . . . . . . . . . . . . . . . . . . . . . . . 379.2 The simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

A Efficiency function, a possible formulation 41

B Portfolio used for the mathematical model 43

C The simulation configuration 45

D Command interpreter 47

Bibliography 51

Page 13: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Chapter 1

Introduction

Project Portfolio Execution refers mainly to the allocation of resources to well se-lected research and development (R & D) projects. It is crucial for the success ofany firm, company or organization to use its resources in the most efficient way andinvest them in the most important and promising projects.

The problem of the allocation of resources is not the only problem that projectportfolio management tries to solve. The problem of project selection and schedulingis also investigated by organizations. However this brings more complexity to thesolving of the whole problem. For this reason, the project selection and schedulingproblem are treated independently from the staffing problem.

The complexity of the staffing problem comes mainly from the uncertainty be-hind the human behaviour, which depends on many factors such as the work envi-ronment of resources and their experience inside the organization. It is a decision-making problem under constraints and conditions that aims to use resources effi-ciently and respond to the global economic requirements by generating gain fromprojects.

The aim of this work is to get a better idea of the staffing problem and how itaffects the well-behaving of the portfolio, and mainly answer the question of howmany projects should be run in parallel in relatively big organizations. In order to dothat, the problem is examined first theoretically by proposing and examining somemathematical models. A Simulation Framework is also implemented allowing totest the behaviour of different portfolio execution strategies of staffing and runningprojects with taking into account the whole complexity of the problem.

Cooperation This project was treated simultaneously and in cooperation withOla Johannesson and Christofer Johansson Hiitti, some of the figures and modelspresented in this report can be found as well in their master thesis report, but withmore focus on the modeling and economic part of the project.

1

Page 14: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s
Page 15: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Chapter 2

Literature review

In the literature, project portfolio execution has found a lot of interest but theproposed mathematical optimisation models have often failed to be used in the theindustrial world. According to Solak et al. [1] this is due to the fact that most of themodels can’t take into account the whole complexity of project portfolios. In thesame article, the authors deal with some aspects of project portfolio managementsuch as starting, and putting on hold projects, the model handles only one resourceand warns about the complexity that will result from extending it to a multi-resourcemodel. The proposed model is a multi-stage stochastic program with uncertaintiesover the project performance (gain) that changes over time. The problem handledis proved NP-Hard (Non-deterministic Polynomial-time hard) by restriction to thebin packing problem. Carlsson et al. [6] proposes another model, a fuzzy mixedinteger programming model for portfolio selection problem, with uncertainties overprojects gains.

There are also articles focusing on resources. Certa et al. [3] focuses on theirbehaviour over time. Especially how their learning and work group affect the ex-ecution of projects. It discusses mainly the problem of allocating the resources toprojects selected by the company according both to the resources availability andother factors. Each human resource can participate in more than one project si-multaneously and works in a team inside projects, the activity of a resource canbe stopped and restarted during the project execution time. The proposed math-ematical model is a multi-objective function model aiming to increase the skills ofresources, the project state, and the satisfaction of the group working on the project.Gutjahr et al. [2] gave also attention to resource proprieties and competences. Intheir study, projects are divided into tasks with a maximum number of workers. Aresource has a number of competences and has learning that grows with the expe-rience it has from its previous projects. The proposed solution is a mixed integerprogram that aims to maximize the average of economic gains from projects andthe learning of resources, optimising at the same time the staffing of resources toprojects. The complexity of the model, lead to some approximations and heuristics,the one for staffing, was a greedy heuristic for the scheduling and the assignment

3

Page 16: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

4 CHAPTER 2. LITERATURE REVIEW

of resources to tasks. J. Gutjahr et al. [5] goes further on focusing on resources,with adding the possibility of firing and hiring new resources, this has an effect ofhaving more computations and the main goal of the article is minimizing the plan-ning scheduling-dependent costs. In the article [8], the presented approach dealswith multi-skilled resources, and the influence of multi-tasking on the efficiency ofthe resources, it proposes a solution that is computationally demanding and worksfor a small number of resources and projects.

Gomar et al. [9] points out a new structure where a project is a set of workpackages, handling also the uncertainty when estimating the total demand of aproject to a given competence. This article talks also about the bottleneck resources(limiting resources) and points out how the dynamic process of resolving bottleneckscan be computationally very complex, also the re-attribution of resources to projectsin real tends to make their contribution to the work less important, i.e, reallocatingresources leads more to reduce their efficiency.

There are also very different approaches that were used to answer the question ofportfolio management, [7] assimilate resources allocation to the intensities in whichprojects are executed, in an approach that tries to see bottlenecks influence.

Kira et al. [4] is the most relevant for our study, it handles the question ofallocating resources, with one competence each to projects having demands fordifferent competences. The competences are assimilated to programming languagesand projects are assimilated to software development projects needing one to severalprogramming languages. The model is a mixed integer program aiming to maximizethe net present value. This article ([4]) presents a lot of similitude to the approachpresented in this master thesis report.

Page 17: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Chapter 3

Problem formulation

The literature studied shows a lot of approaches of handling the project portfolioexecution problem. With both focusing on resources and projects characteristics.In this report, the question of how many projects to run in parallel will have themain focus. The goal is to be able to have efficient implementation both for themodels and the simulation platform to answer the following questions:

• In order to give the best gain, how many projects should be running simulta-neously in R&D Portfolios?

• What are the main factors that should be taken into account when taking thedecision of running a certain number of projects?

• On what depend this number?

These questions will be approached using both mathematical and computersimulation methods. The approach used give a special care to the input from AtlasCopco Rock Drills AB and Level 21 Management AB.

5

Page 18: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s
Page 19: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Part I

Model Details and MathematicalFormulations

7

Page 20: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s
Page 21: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Chapter 4

Model details

As it can be seen from the literature and the previous studies of the R&D portfolioexecution problem, different approaches have been made, and different models havebeen investigated. In this part of the report, the concepts and details of the modelin hand are presented. What does a portfolio exactly mean? What are the char-acteristics of a resource? In which way are projects presented? How are resourcesallocated to projects? And how do they interact with the environment they areplaced in?

4.1 Portfolio descriptionAn R&D portfolio is a set of resources meant to be allocated efficiently to well-selected projects. For this work, within the organization of Atlas Copco Rock DrillsAB R&D department, the portfolios have the following configuration, 300 resources,50 projects and about 30 different competences.

4.1.1 ResourceIn this study, a resource means an individual person having exactly one competence,this is rather more a simplification as in R&D departments resources can be multi-skilled. A resource can be assigned tasks from one or many projects. A resourcehas an efficiency that depends on several factors (see Section 4.2).

4.1.2 ProjectArchitecture In the R&D departments today, the stage gate model has beenmore and more in use. In this work, the same project layout is followed. A stage gatemodel is a model where a project is defined as a succession of several stages, goingthrough different gates. Every stage is a package of tasks that might have internaldependencies. A task is a small package of work demanding one competence. Thedependencies between tasks mean that a task can not start until the tasks it dependson are finished. The project layout is presented in Figure 4.1.

9

Page 22: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

10 CHAPTER 4. MODEL DETAILS

Figure 4.1. The layout of project based of stage-gate model

Gain: In order to have genuine results, it is really important to have a well-chosen evaluation of the projects. For this work, the chosen economic measure isNet Present Value (NPV). The NPV is the accumulated sum of all future cash flows,positive and negative, discounted with a discount rate to compensate for the timevalue of money. The NPV is defined as

NPV =∑

k

ck

(1 + r)k(4.1)

where ck is the cash flow in time period k and r is the discount rate.

4.2 Efficiency of resourcesIt is known that the resource behaviour and efficiency depend always on the workenvironment. In R&D portfolios, the individual resources efficiency is a functionof different factors. In this report, five factors will be handled carefully. Themeasurement and the curves presented in this section are the conclusions of reallife observations of some industrial consultants from Level 21 Management AB andR&D managers from Atlas Copco Rock Drills AB. The efficiency is scaled betweenthe values 0 and 1.

4.2.1 Multi-ProjectMulti-Project represents the dependency of the resource efficiency on the number ofprojects it is working on. Experience has proved that a human resource is generallymore efficient while working on two projects instead of one. However the efficiencydecreases fast when working on a lot of projects. Figure 4.2 shows how does one’sefficiency depend on how many project it is working on at the same time.

4.2.2 Group size effectBy Group size effect is meant how effective are resources when working togetheron the same project. A person working alone on a project does not have the sameefficiency as when working inside a group. However, it is also important that thesize of the group stays relatively small; the curve 4.3 shows how the efficiency of aresource inside a group changes as a function of the group size.

Page 23: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

4.2. EFFICIENCY OF RESOURCES 11

Figure 4.2. Efficiency of a resource as a function of number of projects

Figure 4.3. Efficiency of a resource inside a group as a function of the group size

4.2.3 Ramping

Ramping reflects how resources newly allocated to a project affect the efficiency ofthe resources that have been working on the same project for a longer time. Inreal industry world, that is basically due to the fact that new resources learn theproject from the more experienced workers. The experienced workers lose a bit theirefficiency as a consequence of their teaching. In this work, the curve in Figure 4.4is used as a ramping function. It represents the efficiency as a function of the rationumber of new resourcesnumber of old resources .

4.2.4 Learning

Learning refers to how much time does a resource newly allocated to a project needsbefore being totally effective. Inside Atlas Copco Rock Drills AB, which this studyis trying to model, it is considered that a resource does not do any valuable work inthe first week, half in the second and 100% efficiency is reached after full two weekswork in a project. That is what the curve in Figure 4.5 represents.

Page 24: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

12 CHAPTER 4. MODEL DETAILS

Figure 4.4. The effect of ramping on efficiency

Figure 4.5. The efficiency in a project as a function of time

Figure 4.6. The loss of efficiency while been out of a project

4.2.5 Resource knowledgeResource knowledge or memory refers to how a resource forgets its learning about aproject, i.e when a resource leaves a project, the resource loses what it has learnedduring the time it worked on it. In the curve in Figure 4.6, the efficiency loss dueto the forgotten knowledge can be seen.

Page 25: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Chapter 5

Model mathematical formulation

This chapter puts forward the different mathematical models that aim to optimisethe allocation of human resources to the R&D projects in order to generate themaximum gain over the planning horizon. This chapter discusses also if the modelsare implementable and executable in a reasonable time.

5.1 The mathematical modelThis is the global overall model, it takes as complete description as possible intoaccount, i.e the efficiency of resources, as well as the whole layout of the portfolio.The model is a Non-Linear Mixed Integer Program NLMIP, which is hard to solve.This is the nomenclature needed to understand the model.

5.1.1 Nomenclature

In order to be able to model the problem, the following notations are important:

Constants and Sets

• Gi: The gain value of project i.

• λ: A positive constant representing the discount rate of the gain.

• gki : Gain of project i in time period k, gk

i = Giλk.

• cr: The cost of the resource r.

• T0: The first time step and Tf the last time step.

• Q: Set of tasks.

• Qi: The set of tasks belonging the the project i. Q = ∪iQi and ∩iQi = ∅, thelast condition means that a task belongs to only one project.

13

Page 26: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

14 CHAPTER 5. MODEL MATHEMATICAL FORMULATION

• Dj : Set of task demanding competence j. Q = ∪jDj and ∩jDj = ∅, the lastcondition means that a task demands only one competence.

• Rj : Set of resources of competence j. ∩jRj = ∅, the last condition meansthat a resource has only one competence.

• diq the initial demand of the task q.

• Γq: set of dependencies of the the task q. i.e the set of tasks on which q isdependent.

• Np is Number of projects, Nr the number of resources and Nc the number ofcompetences.

• M : Big constant

• c(r) denotes the competence of the resource r, and c(q) the competence de-manded by task q.

Variables

• dkq : Demand of the task q at the time step k.

• akq,r: Allocated amount of the resource r to task q at the time step k.

• xki : A binary variable describing the state of project i,

xki =

{1 Project i is finished in time step k.0 otherwise

• ykq : A binary variable describing the state of task q,

ykq =

{1 task q is finished in time step k.0 otherwise.

• skq a binary variable describing if the task q is running,

skq =

{1 task q is running in time step k.0 otherwise.

• eff(r,p,k): Efficiency function, the efficiency of the resource r inside project pin the time period k.

5.1.2 Equations

Regarding this notation the mathematical formulation is the following NLMIP

Page 27: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

5.1. THE MATHEMATICAL MODEL 15

Model 1

maxTf∑

k=T0

Np∑i=1

gki x

ki −

∑k,r,q

akq,rcr (5.1)

s.t.∑

q∈Qc(r)

akq,r ≤ 1 ∀r, k (5.2)

dT0q = diq ∀q (5.3)

dk+1q = dk

q −∑

r∈Rc(q)

akq,reff(r, p, k) ∀q,∀k ≤ Tf − 1 (5.4)

dkq ≤M(1− yk

q ) ∀q, k (5.5)

xki ≤

∑q∈Qi

ykq

card(Qi)∀i, k (5.6)

skq ≤

∑q∈Γq

ykq + 1

card(Γq) + 1 ∀q, k (5.7)

akq,r ≤Msk

q ∀q, r, k (5.8)k=Tf∑k=T0

xki ≤ 1 ∀i (5.9)

xki , y

kq , s

kq ∈ {0, 1} ∀i, q, k (5.10)

akq,r, d

kq ≥ 0 ∀q, r, k (5.11)

(5.12)

These are the meanings of every equation:

• (5.1): The aim is to maximize the total gain of the portfolio over the wholeplanning period, however it is also important to keep the cost of the workforceto a minimum.

• (5.2): A resource availability during a week is set to a value of 1. Its ownassignments can’t exceed 1.

• (5.3) and (5.4): The demand is initialized in the first time step and it is thenupdated every week.

• (5.5): Updating the variable ykq . This variable can’t take the value 1 before

the task q is done.

• (5.6): Link a project with its tasks. A project is not done until all its tasksare done.

• (5.7): Dependencies between tasks. A task can’t start until all the tasks itdepends on are done.

Page 28: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

16 CHAPTER 5. MODEL MATHEMATICAL FORMULATION

• (5.8): Allowing allocations only when projects start.

• (5.9): A project generates gain only once, when it is done. This is due to theuse of the net present value (See (4.1.2)).

• (5.10 and 5.11): Constraint of non negativity of variables and booleans.

However, the model is a non-linear mixed integer program. Non-linearity comesfrom Equation 5.4. The efficiency function is hard to write (an attempt is done, seeAppendix A) but the problem is non-concave any way. So no known NLMIP solver indisposal can find the optimal solution of the problem. Also, the number of booleanvariables is about 106 for the configuration of number of projects, resources andcompetences in hand. Knowing that the problem complexity is exponential, it isclear that the original problem can’t be solved on any computer in disposal. So themain goal will be to see the behaviour of resources inside a smaller, less complicatedand less computational demanding models.

5.2 Significant simplificationThe hardness of Model 1 (Equations 5.1-5.11) comes from the boolean variables inEquation 5.10 and the non-linearity from the Equation 5.4. As the main source ofboolean variables is the task dependencies handling, taking them away will simplifyconsiderably the model. The project is defined differently, in fact, a project is onlyone gate that has demands on every competence and those demands are totallyindependent, i.e they can all be run in parallel.

As the efficiency is neither linear, nor concave, and the simplicity of the modelis crucial, only Learning (4.2.4) will be taken into account with a penalty in theobjective function that includes a cost when a resource is newly allocated to aproject. In order to have a more human behaviour and be closer to steady statebehaviour, the work done in projects that are not finished is also giving a smallprofit.

5.2.1 Nomenclature

These are the notations needed to simplify the model.

Constants- gk

i : Gain of project i in time period k, always discounted as defined in the previousmodel.- rj : Number of available resources of competence j.- Np: Number of projects, Nr: Number of resources.- T0: The first time step and Tf the last time step.- dii,j : Initial demand of project i to competence j.- c: The learning cost.

Page 29: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

5.2. SIGNIFICANT SIMPLIFICATION 17

- P : Profit value used to evaluate the work done during the scheduling period.- M: big constant

Variables- dk

i,j : Demand of project i of competence j at the time step k.- ak

i,j : Allocated amount of resources of the competence j to project i at the timestep k.- pk

i,j : Amount of resources of competence j newly allocated to project i in timestep k.- ζk

i,j : Slack variable used while calculating pki,j .

- xki : a binary variable describing the state of project i,

xki =

{0 Project i is finished in time step k1 otherwise

5.2.2 EquationsSo the final mixed integer model that is investigated is the following, for simplifi-cation reasons, it is considered that ∀i, gk

i = gk, i.e. the gain does not depend onprojects, but it is discounted over time.

Let

z =Tf−1∑k=T0

Np∑i=1

gkxki + P

Np∑i=1

j=Nr∑j=1

gTf (1−d

Tf

i,j

dii,j)− c

Tf∑k=T0

Np∑i=1

j=Nr∑j=1

pki,j

Model 2

max z (5.13)s.t.

∑j

aki,j ≤ rk

j ∀i, k (5.14)

dT0i,j = dii,j ∀i, j (5.15)dk+1

i,j = dki,j − ak

i,j ∀i, j∀k < Tf (5.16)j=Nr∑j=1

dki,j ≤M(1− xk

i ) ∀i, k (5.17)

pT0i,j = aT0

i,j + ζT0i,j ∀i, j (5.18)

pki,j = ak

i,j − ak−1i,j + ζk

i,j ∀i, j, ∀k > T0 (5.19)k=Tf∑k=T0

xki ≤ 1 ∀i (5.20)

akij , d

kij , p

ki,j , ζ

ki,j ≥ 0 ∀i, j, k (5.21)

xki ∈ {0, 1} ∀i, j, k (5.22)

(5.23)

Page 30: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

18 CHAPTER 5. MODEL MATHEMATICAL FORMULATION

The meanings of the equations are the following:

• (5.13): The objective function to maximize is always the gain during theplanning period. No workforce cost is taken into account as resources havealready been hired and paid. However a cost is included when a resourceis newly allocated to a new project (i.e pk

i,j>0), and the work done in otherproject during the running period is evaluated with a profit value P .

• (5.14): Constraint on resource availability, only the resources in disposal canbe allocated.

• (5.15) and (5.16): Demand initialization and update.

• (5.17): Updating variable xki .

• (5.18 and 5.19): A way to take learning into account, these equations handlethe variable pk

i,j used to penalize the learning with a unit cost c. Two casesare discussed.

– if aki,j − a

k−1i,j ≤ 0, then ζk

i,j can be able to compensate the negative valueand rise pk

i,j up to 0 (p is non negative according to (5.21)). So leaving aproject is not penalized.

– if aki,j−a

k−1i,j > 0, then as ζk

i,j ≥ 0 then pki,j > 0. which means that adding

new resources will add a cost.

• (5.21): Non negativity of demands and allocations.

• (5.22): Boolean constraint.

This model (Equations 5.13 - 5.22) seems easier to solve, it will mostly give anidea of the behaviour of how the optimal allocation looks when taking into accountthat resources learn and do not switch projects all the time. However this problemis affordable only for a few number of projects, number of weeks and competences.

These simplifications give an easier problem to solve but does not approximatethe initial problem. It will only be solved for small configurations to show the effectof taking into account efficiency of resources on the optimal behaviour of allocations.

Page 31: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Part II

The Simulation Approach

19

Page 32: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s
Page 33: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Chapter 6

Simulation motivation and description

This chapter considers the motivation behind having the simulation approach, itsdescription and its strengths.

6.1 Motivation

The industrial use of mathematical models is very reduced, either they are notable to take into account all the complexity of the human behaviour, or becauseit is usually hard to implement models that do not explode computationally withbig size of portfolios. It is very important to come with approaches and heuristicsin order to solve the problem, or give approximate solutions. In this part of thereport, the simulation is presented as a heuristic approach. The aim is to implementa simulation platform, that can handle both the complexity of project layouts, andthe human resources behaviour, taking into account all the non-linearities related tothe efficiency calculation, having a computational cost that is at most polynomial.The purpose is to be able to run different portfolios with different strategies andconclude the best number of project to run and the best way to allocate resources toprojects. This is a heuristic that finds feasible solutions based on known strategies.

6.2 Simulation description

The simulation takes as input a portfolio, a strategy and the planning horizon.However it is very important to evaluate the portfolio in a steady state, the steadystate treatment is described in 6.4. The simulation takes a portfolio and a strategyand it does weekly allocations based on that strategy. The projects are given in apriority order. The priority of projects is determined by another department.

The simulation is a Java-Based simulation. The implemented framework is acommand interpreter. The description of the command interpreter and an exampleof use is in Appendix D.

21

Page 34: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

22 CHAPTER 6. SIMULATION MOTIVATION AND DESCRIPTION

6.3 Portfolio execution strategies

6.3.1 Definition

Portfolio Execution Strategies refer to how the companies deal with staffing andscheduling. Too many approaches exist, but in this work only the most relevantstrategies will be implemented. The main question is, is it better, regarding thestudied portfolios, to run one or several projects at the same time? If it is optimalto run many projects, is there a way to decide how many to run?

6.3.2 Implemented strategies

A prioritised project is a project that is supposed to be finished first according tocriteria defined by the company. So those are the projects that take all the availableneeded resources to run optimally and execute fast. Two strategies are implemented:

Equal Sharing of Resources means that the prioritised projects share equallythe available resources. For example if there are two prioritised projects p1 and p2,demanding respectively 5 and 2 resources of a certain competence, and if there aretwo people who have this competence, then, one will be assigned to p1 and thesecond will be assigned to project p2.

Sharing of Resources, prioritise runningmeans that the prioritised projectsshare equally resources in a different way. In fact, projects in advanced stage ofexecution never free their resources, in order to execute faster and finish sooner.

6.4 Steady state

6.4.1 Definition

To make the evaluation of strategies more genuine, it is very important to see theirbehaviour in the steady state. The simulation platform was constructed to handlethat. In order to evaluate the behaviour of the portfolio during a steady state, thesimulation have two main running phases.

• Pre-run phase: During this phase, the portfolio is run with the tested strat-egy for enough time to reach a steady state.

• Steady state phase: This is where the evaluation of the portfolio (see Section6.4.2) is done. This phase runs for enough time to see the evolution of projectsand to get some of them done.

6.4.2 Portfolio evaluation

The evaluation of a portfolio is the evaluation of the work done in the steady state.What is counted is then the following (Figure 6.1).

Page 35: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

6.5. ALLOCATION OF RESOURCES AND EFFICIENCY CALCULATION 23

Figure 6.1. Treatment of gain in steady state

• If the project started before the beginning of the steady state, the gain countedis the gain corresponding to the net present value at the finishing week, timesthe fraction of total work done during the steady state.

• If the project started and finished during the steady state, the gain is exactlyits net present value.

• If the project started during the steady state but does not finish before the endof the steady state, the gain is its net present value in the expected finishingweek, times the fraction of work done during the steady state phase.

This kind of evaluation is the best one that takes into account the work done inthe steady state, the state of the portfolio at the end of the state, the behaviour ofthe strategy before achieving the steady state, and the work done during this phase.

6.5 Allocation of resources and efficiency calculationThe efficiency calculations are done after the assignments are assigned to resources.Taking into account the behaviour of resources and their efficiency is the responsi-bility of the strategy. However the question is not only how many resources shouldbe allocated to projects, but the question that arises is also, which persons exactlyare to be assigned. Two implementations are done.

• The first implementation takes into account only the learning of a resource.A resource leaves a project when it has done its task within that project.

• The second implementation takes into account more criteria, in this order:

– A resource needed in a project does not leave the project, and it is neverreplaced by a resource of the same competence with lowest learning.

– When affecting a new resource to a project, the last resource who workedin the same project is prioritised to someone who hasn’t.

Page 36: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

24 CHAPTER 6. SIMULATION MOTIVATION AND DESCRIPTION

– Resources working in few projects are preferred to those working onmany, when a new assignment is to be done.

These criteria take into account the learning, the resources knowledge andalso how many projects a resource is working on. The second implementationlooks more logical and efficiency handling than the first.

The reason behind making strategies independent from the efficiency estimationis not only its simple implementation and its low demand of calculation, but alsolet the strategies compete and be as close as possible to reality.

Page 37: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Part III

Results and Conclusions

25

Page 38: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s
Page 39: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Chapter 7

Results from the mathematical model

This chapter shows the behaviour of the optimal resource allocation to projects whileaiming to maximize the gain. The model solved is Model 2 (Equations 5.13 - 5.22)for the portfolio described in Appendix B. The influence of the model parametersis also studied. The learning cost constant c and the profit value P rewarding thework done during the running period are chosen so that the gain from projects ismore significant than any other source of gain.

7.1 The behaviour of the obtained optimal solution

Figure 7.1 shows the behaviour of the optimal planning. In fact the strategy followedtends to run two projects at a time. It is also seen that at the end it reaches a sortof equilibrium were the two running projects are executing with the same numberof allocations.

The accuracy of the values chosen of c and P (Model 2) simulate the behaviourwanted concerning learning. As said in Section 4.2.4, a resource does not do anyvaluable work until more than a week is spent in a project. This behaviour is seen

Figure 7.1. Allocations over time

27

Page 40: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

28 CHAPTER 7. RESULTS FROM THE MATHEMATICAL MODEL

Figure 7.2. Allocations over time when learning is canceled

for example at week 22, when project 5 is done, the resources are freed but theyare not reallocated as they can’t do any valuable work in any other project for theremaining week.

The main observation is the running of two projects constantly. It seems alsofrom the observation of the allocations that the number of resources allocated torunning projects aren’t very different. It is also useless to make resources learn abouta very advanced project, in week 18, resources freed from the finished project areallocated to a new starting project rather than strengthening the already runningone.

7.2 Sensitivity to model parametersIt is very important to see how the parameters of the model affect the final results.In this model the most relevant parameters are the learning cost c and the profit Pfrom the work done during the run-time.

Case c 6= 0 and P 6= 0: This case is exactly the first case (Section 7.1).

Case c = 0 and P 6= 0: This case presents when the learning is not taken intoaccount, however, the work done in unfinished projects are rewarded with a gain.This has the effect that resources act in a very arbitrary way leaving and gettingback to projects. (Figure 7.2)

Case c = 0 and P = 0: This case means that learning is not penalized andwork done on unfinished project is not rewarding, the result is obvious, the optimalexecution strategy is to execute projects one by one, (Figure 7.3).

Page 41: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

7.2. SENSITIVITY TO MODEL PARAMETERS 29

Figure 7.3. Allocations, with no learning and no work rewarding

Page 42: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s
Page 43: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Chapter 8

Results of the simulation

In order to get an understanding of the whole problem and without any approxima-tions, the simulation framework is run with different portfolios and strategies. Theaim is to have an idea about the number of projects to run in parallel. The strategiesimplemented have all as a parameter the number of running projects. A portfolioexecution strategy is evaluated by the generated accumulated gain (Section 6.4.2).The simulation ran for a long enough period, the layout of projects used and thedefault simulation configurations are described in Appendix C.

8.1 Computational work

The optimal full problem (Model 1) was not possible to solve and the simplifiedmodel (Model 2) takes more than 3 minutes to solve for very small configurations(Appendix B).

The reason behind adopting a simulation approach is to have an efficient tool tofind approximatively the optimal number of projects to run. The simulation tendsto give very satisfying results in term of calculation performance. The number ofprioritised projects and the number of resources are the two parameters on which thestrategies depend, so they are as well the parameters that affect the calculation timethe most. Figure 8.1 shows the calculation time as a function of these parameters.It presents the time needed to execute a simulation of 4 years time, i.e. 200 timesteps, and it takes only about 3 seconds for 45 running projects and 300 availableresources. But the most important result from Figure 8.1 is that, it shows that thecalculation time does not explode when the parameters are bigger.

8.2 Gain components

As explained in Section 6.4.2, three main components are involved in the portfolioevaluation. From Figure 8.2 it can be seen that the main component that affectsthe curve is the total gain from projects done during the steady state. It can also be

31

Page 44: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

32 CHAPTER 8. RESULTS OF THE SIMULATION

Figure 8.1. Performance of the simulation

Figure 8.2. Gain Components

noticed that when a lot of projects are ran at the same time, the gain from startedunfinished projects has an important effect.

8.3 Randomness /Seeds

It is crucial in order to have genuine results to do multiple runs with different seedsof randomizations. That is crucial to avoid drawing conclusions from results comingfrom some aberrant cases. All the results that are presented in the next sections are

Page 45: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

8.4. STEADY STATE 33

Figure 8.3. Confidence interval

Figure 8.4. Accumulated gain for different values of pre-run

the mean of a big number of randomized portfolios. Figure 8.3 shows the results ofall seeds and their average with a confidence interval of 95%. It can be stated thatthe mean is enough to give an idea about all the simulation result.

8.4 Steady stateIt is really important to reach a steady state of the portfolio execution, as it isimportant to see the behaviour of strategies in a long term run. The simulationplatform is not very demanding when it comes to the calculation time and allows todo large enough pre-run (6.4.1) phases in order to reach a steady state. Figure 8.4shows that the curves coincide after 800 pre-run steps, so that is an enough numberof pre-run number of steps.

Page 46: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

34 CHAPTER 8. RESULTS OF THE SIMULATION

Figure 8.5. The accumulated gain of two strategies results

8.5 Strategy choice

Two kinds of sharing resources have been implemented and are described in Section6.3.2, equal sharing and equal sharing with prioritise running. From Figure 8.5,prioritising running projects seems to be more rewarding. However, the most im-portant thing is that both strategies have the same curve evolution. Only theprioritising running projects results will be presented unless a significant differenceis noticed.

8.6 Portfolio size

It is crucial before drawing any results to see how they behave when parameterschange. The portfolio size is represented by the average demand of skills fromprojects and the number of resources. Figure 8.6 represents the form of the accu-mulated gain for different configuration. It shows that the curves have all the sameshape. This means that the same conclusions can be drawn for different portfoliosizes.

8.7 Bottlenecks

Bottleneck resources are one of the nightmares of any managing consultant. Bot-tleneck resources are the resources that are slowing down the execution of a projecteither because they are not available or because they are allocated to other projects.Figure 8.7 shows the effects of bottlenecks on the well behaving of portfolio.

Page 47: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

8.8. SENSITIVITY TO RESOURCES CHOICE 35

Figure 8.6. Accumulated gain for different sizes of portfolios

Figure 8.7. Accumulated gain while forcing some bottlenecks

8.8 Sensitivity to resources choice

In Section 6.5, the question raised was which resources exactly to assign to whichproject. Figure 8.8 shows how the accumulated gain is low when the allocationsdo not anticipate the efficiency of resources. It shows especially, for an arbitraryway of making assignments, a big drop after launching 20 projects, which is themean number of resources by competence, which means that splitting resources overprojects without taking into account their history and the projects states tends togive very unfortunate results.

Page 48: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

36 CHAPTER 8. RESULTS OF THE SIMULATION

Figure 8.8. Allocation algorithm effect

Number of available resources150 225 300 375 450

Demands

500 21 28 35 45 56750 16 22 29 37 431000 15 20 26 31 381250 14 19 24 29 341500 13 18 23 26 32

Table 8.1. Optimal number of running project as a function of the average totaldemand of projects and total available resources

8.9 Optimality as a function of available workforce anddemands

Table 8.1 shows how the optimal number of projects to run changes as a functionof the average total demand of projects and the total available resources. Withouta surprise, for a fixed number of the average demand, with more resources, moreprojects should be started. For fixed amount of available resources, number ofrunning projects decreases as the total average demand gets bigger.

Also for the configuration this report wants to handle, 300 available resourceand a mean total demand of 1000, around 26 projects should be run in parallel.

Page 49: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Chapter 9

Discussion and conclusions

9.1 The mathematical model

The full mathematical model (Model 1) has been investigated and its complexityhas made it necessary to make some approximations and heuristics. Model 2 isa good simplification that removes the origins of the complexity of the full modelby taking away most of its boolean variables and the non-linear equations. Thismodel has given the chance to see the influence of the efficiency of resources on thebehaviour of the allocations.

The behaviour of the solution of the simplified model suggests that many projectsshould run at the same time. The equivalence between the definition of project inModel 2 and stage in Model 1 can make this observation a basis for the resolution ofthe full initial problem; adopting a simulation approach to find the optimal numberof projects to run. It can also be interpreted as a way to run different stages fromdifferent projects in parallel.

Even though the resolution of the simplified model, which takes into accountonly one efficiency factor, shows that it is probably better to run many projects;this model has its limitations. In addition to the non-ability to resolve this modelfor bigger configurations, the model is a bit too simple as it takes into account onlyone of the five factors determining the efficiency of resources. The non handling oftask dependencies and the absence of gates and stages make the model even lesspowerful. Its results can inspire managing consultants but it can not be applicablein a direct way in the industry.

Further work This suggests some work to be done in the future, the model 1(Equations 5.1 - 5.11) is a general model. A way to simplify it, is to adjust forspecific organization. However, it will always be a hard problem. It is also possibleto start from the simple model (Model 2, Equations 5.13 - 5.22) and try to addcomplexity to it. For instance, trying to start from it, and find the most simplifiedstage gate model. Combined to a good solver and more powerful computers, thismight give more interesting results than the ones already reached.

37

Page 50: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

38 CHAPTER 9. DISCUSSION AND CONCLUSIONS

9.2 The simulationThe simulation approach was very important to understand the full problem. Infact, it is the only way to have a framework that takes into account the full com-plexity of the problem, and have logical time of calculations. A special care hasbeen given to resources efficiency and project model. The implemented platformmade it possible to run simulation over big sets of data to have the most reliableresults. The main conclusions to be drawn are:

• It seems that it is never optimal to run a small number of projects and neitherit is running too many. Table 8.1 gives an idea of the optimal solution as afunction of mean workforce needed by a project and the mean of the numberof resources in disposal.

• The assignment of tasks to resources must take into account the history ofresources. Figure 8.8 shows that an arbitrary choice of resources leads to a verylow efficiency which affects finishing projects and then the overall accumulatedgain.

• Bottlenecks ruin the execution of projects, and the best way to fight a bot-tleneck is to hire more resources. Moving resources around decreases theirefficiency and battles with the execution of strategies. Also, it appears thatthe best way to avoid bottlenecks is having hired the staff according to thedemands.

• The conclusion that the number of projects to run in parallel shouldn’t be verybig neither very small, does not depend on the size of the portfolio. Figure8.6 shows that there is always a peak of accumulated gain no matter what thesize is. Table 8.1 gives an idea about where the peak is achieved.

• The number of projects to run depends mainly on the size of organizations.The most deciding parameters are the average total demand of projects, andthe total number of available resources. The bigger is the number of availableresources the better it is to run a bigger number of projects. The bigger isthe average total demands of projects, the better is to run a smaller numberof projects. Table 8.1 gives the best numbers of projects to run obtained fromthe simulation.

• The strategies are implemented to use as much resources as needed by therunning projects. So the utilization is always about 100% when more than 5projects are run in parallel.

Further work The simulation platform can be improved in different ways. Forfurther work on the platform, the biggest improvement that can be added is toimplement more dynamic strategies. The weekly decisions of allocating resourcesto projects can be small optimisation problems that can be solved by dynamic

Page 51: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

9.2. THE SIMULATION 39

methods. All the implemented strategies use greedy algorithms to do the allocations,which is an efficient way to find feasible solutions for the staffing problem based onstrategies, but it does not guarantee the optimality. This improvement can also findthe correlation between the average utilization of resources and the optimal numberof projects to run. The greedy strategies do not answer this question as they use asmuch resources as possible.

The simulation as it is implemented today takes more care of the input fromAtlas Copco Rock Drills AB and Level 21 Management AB, but the implementationallows easy modifications if more generalization or restrictions are needed. It caneasily be modified to take into account different models and approaches, either onthe project model, or the characteristics of resources.

Page 52: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s
Page 53: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Appendix A

Efficiency function, a possibleformulation

This is an attempt to write properly the efficiency function used in Equation (5.4)in Model 1.

Let hkr,p be a boolean variable,

hkr,p =

{1 resource r is working on the project p during time period k.0 otherwise

eff(r, k, p) = mp(npr,k)× L(nwk,r,p)×R(newoldp,k)×M(mr,p,k)×mr(r) (A.1)

where,

• The functions mp, L, R, M and mr refer to the different efficiencies, multi-project(4.2.1), Learning (4.2.4), ramping (4.2.3), learning loss (4.2.5), andgroup size (4.2.2).

• npr,k is the number of projects that resource r is assigned to during time stepk

npr,k =∑

p

hkr,p

• nwk,r,p is the number of consecutive weeks the resource has r been working inproject p up to week k.

nwk,r,p =k∑

l=wk

hlr,p

where,wk = min{t, such that hl

r,p = 1 ∀l ∈ {t, t+ 1, ..., k}}

41

Page 54: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

42 APPENDIX A. EFFICIENCY FUNCTION, A POSSIBLE FORMULATION

• newoldp is the fraction of the number of resource newly allocated to projectover the number of who worked in the project previous week.

newoldp,k =∑

r hkr,p −

∑r h

k−1r,p∑

r hk−1r,p + ε

ε is a small positive value handling the case when the sum is 0.

• mr,p,k it the number of consecutive weeks resource r has not been working inproject p up to week k before getting back.

mr,p,k =k∑

l=w′k

(1− hlr,p)

where,w′k = min{t, such that hl

r,p = 0 ∀l ∈ {t, t+ 1, ..., k}}

• mrp,k is the number of the resources assigned to project p during time step k.

mrp,k =∑

r

hkr,p

It should also be added to the model,

akq,r ≤M ∗ hk

r,p ∀k, ∀r, ∀q ∈ Qp

andak

q,r ≥ (1/M) ∗ hkr,p ∀k, ∀r, ∀q ∈ Qp

This attempt is interesting, as it shows that different efficiency factors can becalculated using more boolean variables. However, the resulted efficiency functionis non-linear, which make Model 1 non concave (maximization problem) as theequality constraint 5.4 is not linear.

The number of needed boolean variables is enormous, which will make the prob-lem harder to solve on a computer.

Page 55: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Appendix B

Portfolio used for the mathematicalmodel

The portfolio in hand is the following,

• 8 projects demanding 2 competences for a run of 23 weeks. The Gain isdiscounted with a rate of 1

1.05 per week.

• The gain in week 1 is 1000 units.

• The projects are similar but in different phases of demands, to have a be-haviour close to a steady state.

• The demands at the starting week are then:

Demand P 1 P 2 P 3 P 4 P 5 P 6 P 7 P 8Competence 1 175 350 525 525 525 525 525 525Competence 2 325 650 975 975 975 975 975 975

Table B.1. Table of demands

• The value used for c is 0.5 and for P is 5.

The amount of available resources fits perfectly the demands. The total availablemen force work is 300, 105 of competence 1 and 195 of competence 2.

43

Page 56: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s
Page 57: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Appendix C

The simulation configuration

The table C.1 presents the kind of treated projects in the simulation, which is theproject layout proposed by a consulting firm in industrial Management, Level 21.Every project goes trough 6 stages and needs 15 competences, there are no taskdependencies inside a project. The total demand is in average 1000 weeks and thetotal available resources are 300 person overall the competences. The portfolio arecreated with a randomization. The demand is a realization of a uniform distributionin the interval [500, 1500]. The competences of resources depends on the demand ofprojects, if 15% of demands need competence c then approximately 15% of resourceshave that competence.

Stage0 1 2 3 4 5

0 0.020 0.015 0.020 0.003 0.013 0.013 Management1 0.015 0.025 0.036 0.018 0.015 0.0052 0 0.005 0.032 0.005 0.003 0

Engineering

3 0 0.005 0.032 0.005 0.003 04 0 0.005 0.032 0.005 0.003 05 0 0.005 0.032 0.005 0.003 0

Com

petenc

e 6 0 0.005 0.032 0.005 0.003 07 0 0.005 0.032 0.005 0.003 08 0 0.005 0.032 0.005 0.003 09 0 0.002 0.020 0.008 0.038 0

Bring to market

10 0 0.002 0.020 0.030 0.025 011 0 0.002 0.020 0.030 0.025 012 0.005 0.007 0.032 0.018 0.088 0.00513 0.005 0.002 0.008 0.003 0.013 0.02014 0.005 0.010 0.020 0.009 0.018 0.008

Table C.1. Project composition, tasks demand fractions of total project demand

45

Page 58: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

46 APPENDIX C. THE SIMULATION CONFIGURATION

The simulation takes as input a strategy, number of pre-run steps and numberof time steps during the steady state. The default values are 800 weeks of pre-runand 200 during the steady state. Unless a sign of opposite, the graph presented inprevious paragraphs represent the results of those configurations.

Page 59: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Appendix D

Command interpreter

The simulation platform is an interpreter of commands. All the commands neededto run a simulation are implemented. To have the details, a help function is imple-mented and gives all the description of different available commands.

The following presents an example of a program to run with the commandinterpreter:

v e r s i on −−apiload −s e t path/ s e t . s e t −s t r path/ s t r . s t r −por path/por . porp r i n trun 10pr in tsave −f −m ou t f i l e .msave −f o u t f i l e . xml

This simple program loads the settings, strategy and the portfolio from xml filesin the directory path. Prints the portfolio, runs 10 steps of simulation and printsagain. The command save has different options, it allows both saving the resultsin matlab format or on xml format.

Overall, the command interpreter presents the following commands, also avail-able when typing the command man under the program. The console is used to runa simulation from command line and from an external program or scripting envi-ronment. The user must provide xml files for; settings (*.set), strategy (*.str) andportfolio (*.por) for the simulation. The console accept the following commands:

version 0 . 2 . 0 aThere are 19 commands a v a i l a b l esave : save − save h i s t o r y or cur rent s tep to f i l esave [ opt ions ]

−f f i l aname−m save matlab f i l e−n −−now save only cur rent s tep−s s t a r t s tep

47

Page 60: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

48 APPENDIX D. COMMAND INTERPRETER

−e end s tep−c save a l l conso l e h i s t o r y

mult irun : mult irun − runs mu l t ip l e runs with d i f f e r e n tva lue s

mult irun [ opt ions ]−r reset command , i . e . "echo a \ ; echo b"−u update command , i . e . " run x "−k key to change in s t r a t e gy−v va lue s for key to take [ 1 , 2 , 3 , 4 ] or 1 : 4−f f i l e name to save as , d e f au l t mult irun .m−h h i s t o r yin comments

error : error − p r i n t s s imu la tor e r r o r serror [ opt ion ]

−p print e r r o r s−d f l u s h−f [ name ] save to f i l e d e f au l t e r r o r s . txt

generate : generate − generate a p o r t f o l i ogenerate [ seed ]

−p [ n rPro j e c t s ]−r [ nrResources ]−t [ nrTasks ]−c [ nrCompentences ]−M [maxDemand ]−m [minDemand ]−T [ totalDemand ] l v l 2 1−A [ avaliableManWeeks ] l v l 2 1−f [ f i l ename ]−−type [ l v l 2 1 ]−−print print xml and s t a tu s− l load to s imu la tor−b bot t l eneck for competence [ 1 , 2 , 3 ] or 1 : 3−bp 100−bot t l eneck percentage 100−0 , 100 i s a l l the re

for : for − for loopfor $a in [ 1 , 2 , 3 ]mult irunavg : multirunavg − runs mu l t ip l e runs with d i f f e r e n t

va lue s with d i f f e r e n t seeds mult irun [ opt ions ]−g gene ra t i on f l a g s−s seed va lues in form [ 1 , 2 , 3 , 4 ] or 1 : 4−u update command , i . e . " run x "−p nr o f prerun for s t eadys ta te−k key to change ins t r a t e gy−v va lue s for key to take [ 1 , 2 , 3 , 4 ] or 1 : 4−f f i l e name to save as , d e f au l t mult irun .m−h h i s t o r y in comments

Page 61: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

49

−−shor t shor t ext ra s t r i n g−−long long extra s t r i n g

set : set − set a value in the running s imula torset [ opt ion ]

−s t r −−s t r a t e gy set key in cur rent s t r a t e gy−r e s −−r e s ou r c e [ id ] set key o f r e s ou r c e by id−k [ key ] key to set−v [ va lue ] va lue to set key as−h −−help get the keys that can be set−sim −−s imu la to r

−d [ 0 | 1 ] debug on or o f f−v [ 0 | 1 ] verbose on or o f f−r reset gain and cash

s t r a t e gy : s t r a t e gy − ac c e s s to cur rent s t r a t e gys t r a t e gy [ opt ion ]

−s −−set −k [ key ] −v [ va lue ] s e t s a i n t e r n a l v a r i ab l e−h −help

run : run − run a set amount o f s t ep srun [ s t ep s ] [ opt ions ]

−s [ s t ep s ] amount o f s t ep s−h break on p o r t f o l i o f i n i s h−p print each step

quit : quit − qu i t s the programquit − qu i t s the programecho : echo − p r i n t s input to outputecho [ s t r i n g ]log : log − p r i n t s s imu la tor l o g slog [ opt ion ]

−p print log−d f l u s h−f [ name ] save to f i l e d e f au l t log . tx t−t [TAG] f i l t e r tag− l log f i r s t entry as tag log

print : print − p r i n t s the s imu la tor and i t s p o r t f o l i oprint [ opt ion ]

−p [ id ] p r o j e c t by id to print−r [ id ] r e s ou r c e by id to print−a −−a l l print a l l s imu la to r info−c −−compact print gain and step and numbero f p r o j e c t s Undone−s −−s t a t s print p o r t f o l i o s t a t s

version : version − p r i n t s s imu la tor versionversion [ opt ion ]

−−api print api version

Page 62: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

50 APPENDIX D. COMMAND INTERPRETER

help : help − d i s p l a y s help on comandshelp [ command ] [ opt ion ]

−e extended outputt imer : t imer − used for performance o f s imu la tort imer −name [ opt ion ]

−−reset −r r e s e t s the chosen t imer and p r i n t s t imer−−de l e t −d d e l e t e s the chosen t imer and p r i n t s time−−stop −s s tops the chosen t imer or a l l i f in −−l s−−l s − l l i s t s a l l t imers

load : load − load f i l e s to s imu la torload [ opt ions ]

−set [path ] path to s e t t i n g s xml−por [path ] path to p o r t f o l i o xml−s t r [path ] path to s t r a t e gy xml

step : s tep − manual s tep o f s imu la tors tep [ opt ions ]

−p −−pre do pre s tep−u −−up do update−a −−post do post s tepdone in above order i f mul t ip l e i s set

man : man − p r i n t s man pageman − p r i n t s man page

A s imula tor o f p o r t f o l i o s t r a t e g i e s .

Page 63: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

Bibliography

[1] Senay Solaka & John-Paul B. Clarke & Ellis L. Johnsonc & Earl R. Barnes.Optimization of r&d project portfolios under endogenous uncertainty. EuropeanJournal of Operational Research, May 2010.

[2] Walter J. Gutjahr & Stefan Katzensteiner & Peter Reiter & Christian Stummer& Michaela Denk. Competence-driven project portfolio selection, schedulingand staff assignment. Springer-verlag, March 2008.

[3] Antonella Certa & Mario Enea & Giacomo Galante & Concetta Manuela LaFata. Multi-objective human resources allocation in r&d projects planning. In-ternational Journal of Production Research, July 2009.

[4] Dennis S. Kira & Martin I. Kusy & David H. Murray & Barbara J. Goranson.A specific decision support system (sdss) to develop an optimal project portfoliomix under uncertainty. IEEE Transactions on Engineering Management, August1990.

[5] Zohar Laslo. Project portfolio management: An integrated method forresourceplanning and scheduling to minimize planning/scheduling-dependent expenses.ScienceDirect, International Journal of Project Management, 2010.

[6] Christer Carlsson & Robert Fulle & Markku Heikkila & Peter Majlender. Afuzzy approach to r&d project portfolio selection. ScienceDirect,InternationalJournal of Approximate Reasoning, 2007.

[7] Rainer Kolisch & Konrad Meyer & Roland Mohr. Maximizing r&d portfoliovalue. Industrial Research institute, May-June 2005.

[8] Jorge E. Gomar & Carl T. Haas & David P. Morton. Assignment and alloca-tion optimization of partially multiskilled workforce. Journal of ConstructionEngineering AND Management, March-April 2002.

[9] Walter J. Gutjahr & Peter Reiter. Bi-objective project portfolio selection andstaff assignment under uncertainty. Optimization: A Journal of MathematicalProgramming and Operations Research, April 2010.

51

Page 64: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s
Page 65: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s
Page 66: Optimal Project Portfolio Execution690725/FULLTEXT01.pdf · Optimal Project Portfolio Execution: Computer Implementation of Models and Simulation Framework : ELHABIB MOUSTAID. Master’s

TRITA-MAT-E 2014:09 ISRN-KTH/MAT/E—14/09-SE

www.kth.se