# Project Portfolio Selection and Scheduling with Resource Allocation, Synergies, and Project Divisibility

Authors: Nancy M. Arratia-Martinez; Nelly M. Hernandez-Gonzalez; Fernando Lopez-Irarragorri
Journal: Mathematical Problems in Engineering
 (2021)

---

## Abstract

A project portfolio can be defined as a set of project proposals that are selected according to one or more criteria by a decision-maker (individual or group). Regularly, the portfolio selection involves different decision problems, among those evaluation, selection, scheduling, and resource allocation. In published scientific literature, these problems have been addressed mainly separately giving as a result suboptimal solutions (portfolios). In addition, elements as partial allocation and project representation through tasks constitute relevant characteristics in practice that remain unaddressed in depth. The proposal of this research is to integrate the project selection and project scheduling, incorporating all relevant elements of both decision problems through the scheduling of tasks allowing to determine when the task will be funded and executed. The main impact of precedence rules at the task level in the portfolio is also studied. In this work, Project Portfolio Selection and Scheduling Problem (PPSS) is studied and solved through a new mixed-integer linear programming (MILP) model. The model incorporates renewable and nonrenewable resource allocation, along with partial and total funding policies, project divisibility, and interdependences. Scheduling is integrated into the model, both at the project level and at the project task level, which allows scheduling in noncontiguous periods. Small instances (up to 64 projects) and medium instances (up to 128 projects) were solved optimally in very short times. The relationship between the quality of near-optimal solutions and the solution computing time by modifying the parameters of the solver employed was researched. No significant change in the solution’s quality was perceived, but a significant reduction in solution computing time was achieved. Furthermore, the main effects of precedence rules on solution times and portfolio impact were studied. Results show that even if few precedence rules were introduced, the resource allocation of tasks changed significantly, even though the portfolio impact or the number of projects of the selected portfolios remains the same.


---

## Body

## 1. Introduction

The Project Portfolio Selection Problem (PPS) consists in identifying a portfolio composed of a set of project proposals that is selected according to one or more criteria by a decision-maker (individual or group). All project proposals have a required quantity of resources (of any type) to be implemented, and in most cases, the available resources are insufficient. As well as, the resource allocation, the portfolio construction implies to give solutions to other different decision problems.For an organization to succeed, it should select the right projects (project’s portfolio) and do right the selected projects (project management) [1]. Here, Project Portfolio Selection Problem is considered together with the scheduling, where the project’s execution and funding moments must be decided. This problem is referred to in the published literature as the Project Portfolio Selection and Scheduling Problem (PPSS).The main objective of PPSS is to select a subset of project proposals and implement an execution plan by assigning required resources to selected projects obeying certain precedence and availability constraints [2].The complexity in PPS and PPSS is given by different factors, and some of them are as follows:(i)
Multi conflicting objectives [3, 4](ii)
Resource interdependencies and other interactions [3, 5–8](iii)
Uncertainty or imprecise information [3–5, 7, 9](iv)
Risk of failure of some projects [3](v)
Scheduling and assignment limitations [4, 9](vi)
Changes over time [5, 7](vii)
Success factors that are difficult to measure [5, 7](viii)
Extensive data for decision-makers [4](ix)
Time pressure in decision [4](x)
Complex projects [4, 6]Although there has been an increasing interest in PPS and PPSS in the last decade, related publications are still scarce. Most of the published works address selection and planning of project portfolios as separate problems, and this limits the impact of proposed solutions leading to suboptimal solutions [10]; as a result, the proposed solutions are still perfectible [11]. One of the main reasons because both problems are solved mainly separated is the inherent complexity of the integrated problem and many characteristics that must be considered like synergies, precedence rules between tasks or between projects, balancing, among others.Given the lack of research that incorporates a sufficiently robust model, in this work, a novel mathematical programming model is proposed for the PPSS problem. This model differs from earlier proposals, by the following:(1)
Allow splitting projects in the task and consider such tasks for selection as well as for scheduling.(2)
In the proposed model, when a project is selected to be supported, several different types of resources are allocated to it and to its tasks. The assigned amount is stated between a minimum amount and the requested quantity, the minimum being the corresponding minimum quantity to guarantee the success of project objectives. As a result, each selected project and task can be supported using all, nothing, or partially resource allocation policies for each type of resource.(3)
Two types of resources are defined [12]: renewable resources, those available to next periods when they are not used, e.g., money and office supplies, and nonrenewable resources, those of which the available amount is not cumulative over time, such as people, equipment, and vehicles. The allocation of resources is made at the task level; Figure 1 shows the structure of the problem. Each project proposal is composed of one or more tasks that require certain resources with the defined amount or for a minimal period to be executed.(4)
The project division is a natural structure of any kind of project. In some real cases as research and development projects, the decision of allocating funds is carried out at the task level in order to have better resource use. In related researches as the one by Fernandez et al. [3], it is argued that the level of resources allocated to the selected proposals has a proportional impact on the expected benefits of projects. In this sense, it should be necessary to evaluate the impact of the resources assigned to each project (given as the aggregation of the total resources assigned to its tasks) with its corresponding contribution to the objective measures.(5)
The model comprises a full implementation of interdependencies at tasks and project level, which produces a positive or negative effect in the portfolio-quality measures and/or in the resource consumption.(6)
The proposed model also incorporates hard portfolio balancing mechanisms like assigning projects to certain predefined areas, research or business categories, or even geographical regions imposing resource assignment constraints over these areas.(7)
In order to integrate both problems, the existence of precedence rules and their effects in the model performance has been stated as one of the main objectives of this study. Precedence rules are defined at the project task level allowing for more flexibility in creating an implementation plan for the portfolio of projects.Figure 1
Project decomposition into a set of tasks.All those characteristics allow for a generalization of the model’s application to problems of different classes, favoring his adoption for solving real common PPSS problem instances (see Section2 for a comparison of the capabilities of the proposed model against other related published papers).The remainder of the paper is organized as follows: in Section2, the literature review is presented; then, in Section 3, the MILP model for the PPSS is formulated, followed by the computational experiments in Section 4; and the results are in Section 5. Finally, in Section 6, the conclusions and future work are stated.


## 2. Literature Review

The PPS and PPSS have been extensively studied under the consideration of different problem characteristics and the application of different solution techniques [11].The main characteristics of the PPSS of some works are shown in Table1. The table includes the information of research in the first column; then, the authors study the project selection in the second column; the third column indicates if the project pause is considered, while the fourth column indicates if a task can be executed in nonconsecutive periods (paused execution); then, the resource allocation is included in the fifth column; the sixth and seventh columns indicate if multiple resources and scheduling are contemplated, respectively; and finally, columns eighth and ninth indicate if interdependencies and uncertainty are considered.Table 1
Comparison of characteristics studied in related works.Generally, in the literature, the representation of projects through tasks is not common when project selection is done, and when scheduling is modeled, the precedence rules and start rules are maintained at the project level, for example, in [13, 14, 19]. Thus, in many works, the scheduling consists in defining the start of the project, but the information about the tasks that must be carried out is ignored. In contrast, in problems like resource-constrained project scheduling (RCPSP), the task level is a crucial characteristic.In this work, we consider the divisibility of a project through pauses at the end of any execution period of a task. The project division facilitates the resource allocation, and when tasks have different contributions to the project objectives, it could improve the portfolio quality, just as it is assumed in this work. According to Li et al. [18], the project division can also be used to take advantage of synergies given by the interaction of two or more projects. They solve a project portfolio selection problem with synergies using mathematical programming.As it is shown in Table1, while the inclusion of multiple types of resources is commonly studied [4, 13, 14, 17, 19, 20–22, 25], the resource allocation is not, although it is applied in real-world cases, for instance, in Research and Development (or R&D) projects and basic science projects with public funds [28].When the resource allocation is contemplated, it is possible to distinguish between two policies: total allocation and partial allocation. The first one implies that if a project is selected, then the requested resources are assigned to it. Partial allocation allows to assign a lower amount of the requested resources to carry out the project or task. The literature that considers the resource allocation with both policies is scarce, among the few available works are [15, 28–30]. In the present work, both policies of resource allocation are allowed.On the other hand, when the state of knowledge allows to identify if synergies exist, it is precise to include its impact value [6], since sometimes that effect is a gain for organizations such as cost-saving, other times it can be the opposite situation. This happens when the benefit of two supported projects is less than the sum of the individual benefits, for example, the support of two or more new development projects that propose similar products. Due to the complexity involved, synergy is an unusually modeled consideration in project portfolio selection problem [31]; nevertheless, in recent years, it has become a relevant characteristic in proposed formulations of PPSS, and some works that include interdependencies that produce synergistic effects are [4, 6, 13, 14, 17–19, 21]. Also, Nabati and Ashrafi [32] developed a model to select the best project portfolio measuring the effects of several types of interdependencies (synergies) between paired projects.Another main challenge in PPSS has been the need to work with uncertainty and imprecise or vague information. This has resulted in the application of different approaches such as stochastic models, fuzzy programming models, interval programming, and others. Panadero et al. [23] proposed a mathematical programming model for the stochastic PPS, maximizing the net present value; they developed a sim-heuristic algorithm as a solution method. Arratia et al. [30] developed a multiobjective fuzzy programming model for the R&D project portfolio selection, and Bhattacharyya [6] presented a method based on uncertainty representation through Grey Theory for R&D project portfolio selection. Some other works that modeled the uncertainty and the imprecise or vague data are [4, 16, 19–21, 23, 24, 26].Although there are many approaches, methods, and models that can be used for solving the problem according to the reviewed literature most popular are those (a) based on heuristic methods, (b) based on exact methods, and (c) hybrid methods.The mathematical programming is one of the most applied [33], for instance, formulations in [4, 14, 15, 29]. In contrast to heuristic approaches, mathematical programming offers a formal explicit model which reflects the main issues considered in the problem in a clear and concise form (mathematical formulations) that makes it more effective to introduce changes or updates to the model and also reflects complex relationships between decision variables in form of constraints. Mathematical programming models can be solved with efficiency exactly or approximately by most of the modern commercial solvers available with the right computation resources. Today, multiobjective optimization is not a limitation for mathematical programming, so solutions based on mathematical programming are at least good candidates for solving complex problems like the integrated problem of portfolio selection and scheduling; therefore, as stated by Mohagheghi et al. [2], the literature is still weak in proposing exact solution methods to this integrated problem.Among the few published papers are the work by Harrison et al. [34] who develop a hybrid method to solve instances with up to 1000 projects; nevertheless, they do not consider synergies, nor tasks, only total (yes-no or 0–1) resource allocation is considered, and the work by Pérez et.al. [35] consider synergies and tasks, but they still only consider total resource allocation (for example, resources like time for certain machines or teams, or money, cannot be optimally assigned under this schema).Some papers that present methods based on multicriteria decision-making are [6, 36]. In [36], a multicriteria decision-making method based on a modified Delphi method (MDM), the decision-making trial and evolutionary laboratory (DEMATEL) method, and the analytic network process (ANP) method is proposed for R&D PPS. Moreover, Bhattacharyya [6] presents a multiattribute decision-making method for R&D project portfolio selection under uncertainty. In [33], a hybrid fuzzy multicriteria decision method based on an analytic hierarchical process (AHP) and a multicriteria optimization and compromise solution (VIKOR, in Serbian) method was applied.To sum it, despite being a wide variety of works that consider different characteristics and approaches, the PPSSP remains as a current problem given that the lack of approaches that address the integrated problem. In addition, some characteristics remain unaddressed in-depth although they constitute relevant characteristics that are needed in practice as partial allocation and project representation through tasks, in order to tackle both decision problems, selection, and scheduling involving constraints for precedence relations.


## 3. Mathematical Model

The proposed model is presented as follows: first, the main notation, sets, and parameters, followed by the decision variables, then the objective function, and the set of constraints.Thei,j,k, and l indexes denote tasks, projects, areas, and synergies, respectively. Each project belongs to just one area established by the organization in charge; this information is considered to get a balanced portfolio, either on resources or funded projects. Synergies are present when a set of projects or tasks (previously identified) are supported simultaneously, and as a result, a measure of interest will be better than the one obtained given in a nonconjunct manner. Both areas and synergies are explained in detail when the constraints are discussed.The resources to be allocatedr∈R are distinguished into two categories. First, R1 is the set of the resources that in case of not being used in a period, t can be transferred (renewable resources) to the immediate subsequent period t+1. The second type is denoted by R2, and this type includes resources that cannot be transferred to other periods (nonrenewable resources), for example, workforce, equipment, and vehicles.The decision variables are presented in Table2. The first column indicates the notation, and then, a brief description is presented, followed by the scope of each variable, and finally, in the last column, we indicate the nature.Table 2
Decision variables of the mathematical formulation.
Decision variableDescriptionScopeNaturexijrtAmount of resources to be allocated to taski of project j and resource type r in the period ti∈Ij,j∈J, r∈R,t∈TContinuousyjIf the projectj is selected to be supported and financedj∈JBinaryzijtIf taski of project j is active or in execution in period ti∈Ij,j∈J,t∈TBinaryσltIf the synergyl is active in the period tl∈S,t∈TBinaryσlt−,σlt+Additional decision variables in order to obtain theσlt variablel∈S,t∈TBinarywij−The first period in which the taski in project j is activei∈Ij,j∈JIntegerwij+The last period in which the taski in project j is activei∈Ij,j∈JInteger


### 3.1. Objective Function

The objectives to be optimized correspond to the desirable attributes in a portfolio of projects. An impact measure for R&D projects can be defined as the previous formulation in [15] and extended to incorporate the task level and the different types of resources. For this, the minimum and maximum resources needed for carrying out a task in a particular period are Rijrtmin and Rijrtmax, respectively.Figure2 shows the plot of μijrt function that represents the level of membership to the fuzzy predicate that “task i of project j has enough support for resource type r in period t.” Note that when all the requested quantity is assigned, the value of μijrt is equal to 1, and when the assigned quantity is the minimum, the value is αijrt. For another value between the minimum and the maximum, the membership level is calculated using the following equation:(1)μijrt=aijrtzijt+bijrtxijrt,where aijrt and bijrt parameters are defined in the same way that [28, 30]. For all i,j∈Sl,r∈R,t∈T, we have(2)aijrt=αijrt−Rijrtmin1−αijrtRijrtmax−Rijrtmin,(3)bijrt=1−αijrtRijrtmax−Rijrtmin.Figure 2
Representation of functionμijrt (vertical axis) for a quantity of resources assigned (horizontal axis).The objective function for impact with the type of resourcesr results as equation (4) to be Maximized for each r∈R, where Wj is the impact value of project j, and ρij is the relative importance of task i on the project impact, so 0≤ρij≤1 and ∑i∈Ijρij=1. The parameter ρij is divided by the task duration dij in order to distribute the contribution of tasks between periods of execution.(4)Fr=∑j∈JWj∑i∈Ij∑t∈Tμijrtρijdij+∑t∈T∑l∈S−C+∪C−υltσlt,∀r∈R.In equation (4), the first term calculates the total portfolio impact, that is, each project impact is multiplied by the total contribution. Then, the second term represents the additional effects by active synergies (υlt), where l∈S−C+∪C− is used for excluding the sets of synergies that affect resource consumption.


### 3.2. Constraints

The resource availability depends on the type of resources. The constraints in (5) correspond to nonrenewable resources; for this, the resource allocation cannot exceed the total amount available in each period, denoted by Prt. This limitation also applies to resources in R1 but just in the first period (6); for the following periods (t≥2), the available resources are the total amount established for the period plus the remaining of the previous periods. The latter limitation is constrained in (7).(5)∑j∈J∑i∈Ijxijrt≤Prt,t∈T,r∈R2,(6)∑j∈J∑i∈Ijxijr1≤Pr1,r∈R1,(7)∑j∈J∑i∈Ijxijrt≤Prt+∑t2<tPrt2−∑j∈Jxijrt2,t∈T|t≥2,r∈R1.


#### 3.2.1. Portfolio Balancing

In some cases, the organization could be interested in balancing the portfolio according to different criteria, for example, balancing the resource allocation through different areas (departments, areas of knowledge, investment areas, etc.). Each project belongs to just one area,k∈K which has a minimum and maximum amount of resources to be allocated, and these quantities are denoted by Pktmin and Pktmax. In constraints (8) and (9), the minimum and maximum amounts are established for each area k.(8)∑j∈Jk∑i∈Ij∑t∈Txijrt≥Pktmin,k∈K,r∈R,(9)∑j∈Jk∑i∈Ij∑t∈Txijrt≤Pktmax,k∈K,r∈R.


#### 3.2.2. Resource Allocation for Projects and Tasks

The amount allocated for a project is obtained by the sum of the assigned amount for its tasks. Constraints (10) and (11) establish the allocation limits for each project [Mjrmin,Mjrmax ].(10)∑i∈Ij∑t∈Txijrt≥Mjrminyj,j∈J,r∈R,(11)∑i∈Ij∑t∈Txijrt≤Mjrmaxyj,j∈J,r∈R.Constraints (12)–(13) state that, for each supported task, there is an amount of resources assigned, and this amount has to be between Rijrtmin and Rijrtmax, being the maximum amount the requested quantity and the minimum the quantity proposed by the committee or the decision-maker during the project evaluation.Constraints (12) apply to tasks that do not participate in synergies that imply a reduction in the consumption of resources, because those tasks could get a lower amount than Rijrtmin. Similarly, constraints (13) apply to the tasks that do not participate in synergies with an increment of resource consumption, because those tasks could get a higher amount than Rijrtmax.(12)xijrt≥Rijrtminzijt,i,j∉Sl,l∈C−,t∈T,r∈R,(13)xijrt≤Rijrtmaxzijt,i,j∉Sl,l∈C+,t∈T,r∈R,where Sl is a set of tasks i,j that defines a synergy and C− and C+ are sets of synergies that imply reduction and increment in consumption of resources, respectively. This topic is discussed in detail, later.


#### 3.2.3. Logical Constraints

Some logical constraints are defined to relate tasks with projects. Constraints (14) state that if any task of a project is unfunded (by assignation of resources), then, the project j is not selected to be part of the portfolio. Whereas if a project j is not selected and supported, then, its tasks are not supported either (15).(14)yj≤∑i∈Ij∑t∈Tzijt,j∈J,(15)∑i∈Ij∑t∈Tzijt≤yj∑i∈Ijdij,j∈J.


#### 3.2.4. Synergies

The interdependence between tasks and/or projects is modeled using the general concept of synergy, based on [28] that is also based on [13, 14]. Each declared synergy l constitutes a set of tasks and/or projects that is related. In the case of being supported simultaneously, then its correspondent value in some measure (e.g., impact, resources) individually differs from the value in a conjunct way. A synergy is active if a number of its elements are supported sufficiently.Three types of synergies are defined: (1) benefit synergies, affecting the desirable attributes in the portfolio through the objective function measures; (2) resource consumption synergies, which imply the increase or decrease of the resource consumption; and (3) the technical synergies, aimed to balance the number of active synergies.A synergyl∈S is active in a specific period t when a subset of its tasks is supported, and the cardinal of this subset has to be between a minimum and a maximum needed quantity [Slmin,Slmax].Constraints (16) and (17) are established to evaluate the fulfillment of Slmin, while constraints (18) and (19) establish the fulfillment of Slmax. That is, for all l∈S,t∈T, we declare the following constraints:(16)Sl+1σlt−≥∑i,j∈Slzijt−Slmin+1,(17)Sl+1σlt−≤∑i,j∈Slzijt−Slmin+Sl+1,(18)Sl+1σlt+≥Slmax−∑i,j∈Slzijt+1,(19)Sl+1σlt+≤Slmax−∑i,j∈Slzijt+Sl+1,(20)σlt=σlt−+σlt+−1.where σlt− takes the value of 1 when at least Slmin tasks of Sl are in execution in period t, and similarly, σlt+ takes the value of 1 when no more than Slmax tasks are in execution in period t. If both variables are equal to 1, then σlt will also take the value of one, and zero in other case (20).


#### 3.2.5. Resource Consumption Synergies

Each active synergyC+∪C− in period t produces an additional value (positive or negative) in the consumption of resources of tasks belonging to the synergy. We denote the additional amount by vlt, and since this type of synergy does not affect all types of resources, the parameter vlt could be equal to zero. Constraints (21) and (22) establish the situation are as follows:(21)∑i,j∈Slxijrt≤∑i,j∈SlRijrtmaxzijt+vltσlt,l∈C+,r∈R,t∈T,(22)∑i,j∈Slxijrt≥∑i,j∈SlRijrtminzijt−vltσlt,l∈C−,r∈R,t∈T.Constraints (24)–(26) establish that the maximum and minimum amount to be assigned to tasks in synergies should have the enough flexibility to obtain more resources (in case of increment) or the flexibility to be reduced (in case of decrement in consumption of resources). For all i,j∈Sl,l∈C+,r∈R,t∈T, we define the following constraints:(23)xijrt≤Rijrtmaxzijt+vltσlt,(24)xijrt≤Rijrtmaxzijt+1−σlt+zijtθ.The value ofθ is a large number; in this case, the value of Mjrmin can be used.For alli,j∈Sl,l∈C+,r∈R,t∈T, we define the following constraint:(25)Rijrtminzijt−vltσlt≤xijrt.


#### 3.2.6. Technical Synergies

The technical synergies can be seen asmetasynergies since they are designed to control the number of active synergies in each period. This also allows establishing relations between synergies, e.g., dependencies or incompatibilities. See constraints (26) where τtmin and τtmax are the minimum and maximum number of synergies to be declared active in the set τ. We denote Sτ as the set of technical synergies.(26)τtmin≤∑l∈τσlt≤τtmax,τ∈Sτ,t∈T.


#### 3.2.7. Task Duration and Execution

Constraints (27) and (28) indicate that a task should be active for a number of periods equal to its duration (dij).(27)∑t∈Tzijt≤dij,i∈Ij,j∈J,(28)∑t∈Tzijt≥dijzijt′,i∈Ij,j∈J,t′∈T.Sometimes, it could be important for a specific type of project to have at least one active task by period. This additional limitation is stated in the following constraint:(29)∑i∈Ijzijt≤1,j∈J,t∈T.


#### 3.2.8. Precedence Relations and Start Rule Constraints

For the establishment of precedence rules, we need to know the beginning and end period of the tasks. For this, the decision variableswij− and wij+ are needed.With constraints (30)–(32), the first period in which task i in project j is active is obtained. Then, the last period of execution is calculated by constraints (33)–(35). The following constraints apply for all i∈Ij,j∈J,t∈T:(30)wij−≤θ11−zijt+tzijt,(31)wij−≥tzijt−t∑t′<tzijt′,(32)wij−≤Tzijt,(33)wij+≤tzjit+θ2dij−∑t′<tzijt′+θ21−zijt,(34)wij+≥tzijt,(35)wij+≤Tzijt.We refer to thestart rule policy as the policy that implies a precedence relation with a pair of tasks in which one of them has to start only after the end of the other task. For simplicity in the notation, hereinafter, we denote two particular tasks with a sequential precedence relation as ξ and ξ′.(i)
The first group of constraints (36) should consider the following: when the tasks ξ and ξ′ are selected to be supported, then if ξ′ starts in a period t, then ξ has to start in period t′ where t′>t. Note that, if task ξ′ is supported, then task ξ also has to be supported.(36)wξ′+≤wξ−,ξ,ξ′∈Q,whereQ is the set of task pairs under this rule.(ii)
In the second precedence rule (37) and (38), there is a minimum and maximum number of periods (hpmin, hpmax) between the end and start period of the conditioned tasks. For these constraints, we know that if task ξ′ is supported, then task ξ also has to be supported.(37)wξ−≥wξ++hpmin∑t∈Tzξdξ,ξ,ξ′∈Q′,(38)wξ−≤wξ++hpmax∑t∈Tzξdξ,ξ,ξ′∈Q′,whereQ′ is the set of task pairs under this rule, and p=ξ,ξ′∈Q′.(iii)
The start rule helps to establish a minimum or a maximum period in which a taskξ must be started. For each task under this rule ξ∈Q″, we denote tξminytξmax as the minimum period and the maximum period (see constraints in (39) and (40)).(39)wξ−≥tξmin∑t∈Tzξdξ,ξ∈Q″,(40)wξ−≤tξmax,ξ∈Q″.Finally, let us denote the nonnegativity constraints as follows:xijrt≥0,wij−≥0,wij+≥0.


### 3.3. Remarks

To exemplify the interdependent groups, six one-task projects competing for funding and one interdependent relation group of projects are considered. In a natural way, the relative importance of the unique task by the project should be equal to one.Then, consider the following data:(i)
Projects: ID1, ID2, ID3, ID4, ID5, ID6(ii)
Project impact: 7.9, 3.4, 4.7, 9.1, 2.4, and 5.1, respectively(iii)
Requested amount for project (and task): $1000, $2500, $1300, $890, $740, and $2400, respectively(iv)
Minimum amount of resources for project (and task): $750, $2200, $1300, $890, $740, and $2400, respectively(v)
Duration: 2, 2, 3, 4, 3, and 2 periods, respectively(vi)
Projects in the interdependent group: ID1, ID2, ID3(vii)
The total resources needed by task are considered as equal for any period in which are executed(viii)
Precedence rules and start and end rules are not considered in this numerical example(ix)
The six projects belong to one areaIn case projects #1, #3, and #6 are financed, then a total maximum amount of resources of $5180.00 could be allocated and a minimum amount of $ 4450.00. Suppose that if these three projects require a system or laboratory, which is under the supervision of one institute, then it is possible to have an additional cost to administrate this resource.Then, in case that the projects #1, #3, and #6 are selected at the same time to be carried out, in the same period(s), the additional costυlt will increment the total amount allocated in this quantity, and the additional amount will be allocated in different forms: allocated to just one project, two projects, or in a shared way. If this cost is not convenient, then the additional cost could be avoided by not selecting the three projects at the same time. So, the negative synergistic cost will have no effect.


## 3.1. Objective Function

The objectives to be optimized correspond to the desirable attributes in a portfolio of projects. An impact measure for R&D projects can be defined as the previous formulation in [15] and extended to incorporate the task level and the different types of resources. For this, the minimum and maximum resources needed for carrying out a task in a particular period are Rijrtmin and Rijrtmax, respectively.Figure2 shows the plot of μijrt function that represents the level of membership to the fuzzy predicate that “task i of project j has enough support for resource type r in period t.” Note that when all the requested quantity is assigned, the value of μijrt is equal to 1, and when the assigned quantity is the minimum, the value is αijrt. For another value between the minimum and the maximum, the membership level is calculated using the following equation:(1)μijrt=aijrtzijt+bijrtxijrt,where aijrt and bijrt parameters are defined in the same way that [28, 30]. For all i,j∈Sl,r∈R,t∈T, we have(2)aijrt=αijrt−Rijrtmin1−αijrtRijrtmax−Rijrtmin,(3)bijrt=1−αijrtRijrtmax−Rijrtmin.Figure 2
Representation of functionμijrt (vertical axis) for a quantity of resources assigned (horizontal axis).The objective function for impact with the type of resourcesr results as equation (4) to be Maximized for each r∈R, where Wj is the impact value of project j, and ρij is the relative importance of task i on the project impact, so 0≤ρij≤1 and ∑i∈Ijρij=1. The parameter ρij is divided by the task duration dij in order to distribute the contribution of tasks between periods of execution.(4)Fr=∑j∈JWj∑i∈Ij∑t∈Tμijrtρijdij+∑t∈T∑l∈S−C+∪C−υltσlt,∀r∈R.In equation (4), the first term calculates the total portfolio impact, that is, each project impact is multiplied by the total contribution. Then, the second term represents the additional effects by active synergies (υlt), where l∈S−C+∪C− is used for excluding the sets of synergies that affect resource consumption.


## 3.2. Constraints

The resource availability depends on the type of resources. The constraints in (5) correspond to nonrenewable resources; for this, the resource allocation cannot exceed the total amount available in each period, denoted by Prt. This limitation also applies to resources in R1 but just in the first period (6); for the following periods (t≥2), the available resources are the total amount established for the period plus the remaining of the previous periods. The latter limitation is constrained in (7).(5)∑j∈J∑i∈Ijxijrt≤Prt,t∈T,r∈R2,(6)∑j∈J∑i∈Ijxijr1≤Pr1,r∈R1,(7)∑j∈J∑i∈Ijxijrt≤Prt+∑t2<tPrt2−∑j∈Jxijrt2,t∈T|t≥2,r∈R1.


### 3.2.1. Portfolio Balancing

In some cases, the organization could be interested in balancing the portfolio according to different criteria, for example, balancing the resource allocation through different areas (departments, areas of knowledge, investment areas, etc.). Each project belongs to just one area,k∈K which has a minimum and maximum amount of resources to be allocated, and these quantities are denoted by Pktmin and Pktmax. In constraints (8) and (9), the minimum and maximum amounts are established for each area k.(8)∑j∈Jk∑i∈Ij∑t∈Txijrt≥Pktmin,k∈K,r∈R,(9)∑j∈Jk∑i∈Ij∑t∈Txijrt≤Pktmax,k∈K,r∈R.


### 3.2.2. Resource Allocation for Projects and Tasks

The amount allocated for a project is obtained by the sum of the assigned amount for its tasks. Constraints (10) and (11) establish the allocation limits for each project [Mjrmin,Mjrmax ].(10)∑i∈Ij∑t∈Txijrt≥Mjrminyj,j∈J,r∈R,(11)∑i∈Ij∑t∈Txijrt≤Mjrmaxyj,j∈J,r∈R.Constraints (12)–(13) state that, for each supported task, there is an amount of resources assigned, and this amount has to be between Rijrtmin and Rijrtmax, being the maximum amount the requested quantity and the minimum the quantity proposed by the committee or the decision-maker during the project evaluation.Constraints (12) apply to tasks that do not participate in synergies that imply a reduction in the consumption of resources, because those tasks could get a lower amount than Rijrtmin. Similarly, constraints (13) apply to the tasks that do not participate in synergies with an increment of resource consumption, because those tasks could get a higher amount than Rijrtmax.(12)xijrt≥Rijrtminzijt,i,j∉Sl,l∈C−,t∈T,r∈R,(13)xijrt≤Rijrtmaxzijt,i,j∉Sl,l∈C+,t∈T,r∈R,where Sl is a set of tasks i,j that defines a synergy and C− and C+ are sets of synergies that imply reduction and increment in consumption of resources, respectively. This topic is discussed in detail, later.


### 3.2.3. Logical Constraints

Some logical constraints are defined to relate tasks with projects. Constraints (14) state that if any task of a project is unfunded (by assignation of resources), then, the project j is not selected to be part of the portfolio. Whereas if a project j is not selected and supported, then, its tasks are not supported either (15).(14)yj≤∑i∈Ij∑t∈Tzijt,j∈J,(15)∑i∈Ij∑t∈Tzijt≤yj∑i∈Ijdij,j∈J.


### 3.2.4. Synergies

The interdependence between tasks and/or projects is modeled using the general concept of synergy, based on [28] that is also based on [13, 14]. Each declared synergy l constitutes a set of tasks and/or projects that is related. In the case of being supported simultaneously, then its correspondent value in some measure (e.g., impact, resources) individually differs from the value in a conjunct way. A synergy is active if a number of its elements are supported sufficiently.Three types of synergies are defined: (1) benefit synergies, affecting the desirable attributes in the portfolio through the objective function measures; (2) resource consumption synergies, which imply the increase or decrease of the resource consumption; and (3) the technical synergies, aimed to balance the number of active synergies.A synergyl∈S is active in a specific period t when a subset of its tasks is supported, and the cardinal of this subset has to be between a minimum and a maximum needed quantity [Slmin,Slmax].Constraints (16) and (17) are established to evaluate the fulfillment of Slmin, while constraints (18) and (19) establish the fulfillment of Slmax. That is, for all l∈S,t∈T, we declare the following constraints:(16)Sl+1σlt−≥∑i,j∈Slzijt−Slmin+1,(17)Sl+1σlt−≤∑i,j∈Slzijt−Slmin+Sl+1,(18)Sl+1σlt+≥Slmax−∑i,j∈Slzijt+1,(19)Sl+1σlt+≤Slmax−∑i,j∈Slzijt+Sl+1,(20)σlt=σlt−+σlt+−1.where σlt− takes the value of 1 when at least Slmin tasks of Sl are in execution in period t, and similarly, σlt+ takes the value of 1 when no more than Slmax tasks are in execution in period t. If both variables are equal to 1, then σlt will also take the value of one, and zero in other case (20).


### 3.2.5. Resource Consumption Synergies

Each active synergyC+∪C− in period t produces an additional value (positive or negative) in the consumption of resources of tasks belonging to the synergy. We denote the additional amount by vlt, and since this type of synergy does not affect all types of resources, the parameter vlt could be equal to zero. Constraints (21) and (22) establish the situation are as follows:(21)∑i,j∈Slxijrt≤∑i,j∈SlRijrtmaxzijt+vltσlt,l∈C+,r∈R,t∈T,(22)∑i,j∈Slxijrt≥∑i,j∈SlRijrtminzijt−vltσlt,l∈C−,r∈R,t∈T.Constraints (24)–(26) establish that the maximum and minimum amount to be assigned to tasks in synergies should have the enough flexibility to obtain more resources (in case of increment) or the flexibility to be reduced (in case of decrement in consumption of resources). For all i,j∈Sl,l∈C+,r∈R,t∈T, we define the following constraints:(23)xijrt≤Rijrtmaxzijt+vltσlt,(24)xijrt≤Rijrtmaxzijt+1−σlt+zijtθ.The value ofθ is a large number; in this case, the value of Mjrmin can be used.For alli,j∈Sl,l∈C+,r∈R,t∈T, we define the following constraint:(25)Rijrtminzijt−vltσlt≤xijrt.


### 3.2.6. Technical Synergies

The technical synergies can be seen asmetasynergies since they are designed to control the number of active synergies in each period. This also allows establishing relations between synergies, e.g., dependencies or incompatibilities. See constraints (26) where τtmin and τtmax are the minimum and maximum number of synergies to be declared active in the set τ. We denote Sτ as the set of technical synergies.(26)τtmin≤∑l∈τσlt≤τtmax,τ∈Sτ,t∈T.


### 3.2.7. Task Duration and Execution

Constraints (27) and (28) indicate that a task should be active for a number of periods equal to its duration (dij).(27)∑t∈Tzijt≤dij,i∈Ij,j∈J,(28)∑t∈Tzijt≥dijzijt′,i∈Ij,j∈J,t′∈T.Sometimes, it could be important for a specific type of project to have at least one active task by period. This additional limitation is stated in the following constraint:(29)∑i∈Ijzijt≤1,j∈J,t∈T.


### 3.2.8. Precedence Relations and Start Rule Constraints

For the establishment of precedence rules, we need to know the beginning and end period of the tasks. For this, the decision variableswij− and wij+ are needed.With constraints (30)–(32), the first period in which task i in project j is active is obtained. Then, the last period of execution is calculated by constraints (33)–(35). The following constraints apply for all i∈Ij,j∈J,t∈T:(30)wij−≤θ11−zijt+tzijt,(31)wij−≥tzijt−t∑t′<tzijt′,(32)wij−≤Tzijt,(33)wij+≤tzjit+θ2dij−∑t′<tzijt′+θ21−zijt,(34)wij+≥tzijt,(35)wij+≤Tzijt.We refer to thestart rule policy as the policy that implies a precedence relation with a pair of tasks in which one of them has to start only after the end of the other task. For simplicity in the notation, hereinafter, we denote two particular tasks with a sequential precedence relation as ξ and ξ′.(i)
The first group of constraints (36) should consider the following: when the tasks ξ and ξ′ are selected to be supported, then if ξ′ starts in a period t, then ξ has to start in period t′ where t′>t. Note that, if task ξ′ is supported, then task ξ also has to be supported.(36)wξ′+≤wξ−,ξ,ξ′∈Q,whereQ is the set of task pairs under this rule.(ii)
In the second precedence rule (37) and (38), there is a minimum and maximum number of periods (hpmin, hpmax) between the end and start period of the conditioned tasks. For these constraints, we know that if task ξ′ is supported, then task ξ also has to be supported.(37)wξ−≥wξ++hpmin∑t∈Tzξdξ,ξ,ξ′∈Q′,(38)wξ−≤wξ++hpmax∑t∈Tzξdξ,ξ,ξ′∈Q′,whereQ′ is the set of task pairs under this rule, and p=ξ,ξ′∈Q′.(iii)
The start rule helps to establish a minimum or a maximum period in which a taskξ must be started. For each task under this rule ξ∈Q″, we denote tξminytξmax as the minimum period and the maximum period (see constraints in (39) and (40)).(39)wξ−≥tξmin∑t∈Tzξdξ,ξ∈Q″,(40)wξ−≤tξmax,ξ∈Q″.Finally, let us denote the nonnegativity constraints as follows:xijrt≥0,wij−≥0,wij+≥0.


## 3.2.1. Portfolio Balancing

In some cases, the organization could be interested in balancing the portfolio according to different criteria, for example, balancing the resource allocation through different areas (departments, areas of knowledge, investment areas, etc.). Each project belongs to just one area,k∈K which has a minimum and maximum amount of resources to be allocated, and these quantities are denoted by Pktmin and Pktmax. In constraints (8) and (9), the minimum and maximum amounts are established for each area k.(8)∑j∈Jk∑i∈Ij∑t∈Txijrt≥Pktmin,k∈K,r∈R,(9)∑j∈Jk∑i∈Ij∑t∈Txijrt≤Pktmax,k∈K,r∈R.


## 3.2.2. Resource Allocation for Projects and Tasks

The amount allocated for a project is obtained by the sum of the assigned amount for its tasks. Constraints (10) and (11) establish the allocation limits for each project [Mjrmin,Mjrmax ].(10)∑i∈Ij∑t∈Txijrt≥Mjrminyj,j∈J,r∈R,(11)∑i∈Ij∑t∈Txijrt≤Mjrmaxyj,j∈J,r∈R.Constraints (12)–(13) state that, for each supported task, there is an amount of resources assigned, and this amount has to be between Rijrtmin and Rijrtmax, being the maximum amount the requested quantity and the minimum the quantity proposed by the committee or the decision-maker during the project evaluation.Constraints (12) apply to tasks that do not participate in synergies that imply a reduction in the consumption of resources, because those tasks could get a lower amount than Rijrtmin. Similarly, constraints (13) apply to the tasks that do not participate in synergies with an increment of resource consumption, because those tasks could get a higher amount than Rijrtmax.(12)xijrt≥Rijrtminzijt,i,j∉Sl,l∈C−,t∈T,r∈R,(13)xijrt≤Rijrtmaxzijt,i,j∉Sl,l∈C+,t∈T,r∈R,where Sl is a set of tasks i,j that defines a synergy and C− and C+ are sets of synergies that imply reduction and increment in consumption of resources, respectively. This topic is discussed in detail, later.


## 3.2.3. Logical Constraints

Some logical constraints are defined to relate tasks with projects. Constraints (14) state that if any task of a project is unfunded (by assignation of resources), then, the project j is not selected to be part of the portfolio. Whereas if a project j is not selected and supported, then, its tasks are not supported either (15).(14)yj≤∑i∈Ij∑t∈Tzijt,j∈J,(15)∑i∈Ij∑t∈Tzijt≤yj∑i∈Ijdij,j∈J.


## 3.2.4. Synergies

The interdependence between tasks and/or projects is modeled using the general concept of synergy, based on [28] that is also based on [13, 14]. Each declared synergy l constitutes a set of tasks and/or projects that is related. In the case of being supported simultaneously, then its correspondent value in some measure (e.g., impact, resources) individually differs from the value in a conjunct way. A synergy is active if a number of its elements are supported sufficiently.Three types of synergies are defined: (1) benefit synergies, affecting the desirable attributes in the portfolio through the objective function measures; (2) resource consumption synergies, which imply the increase or decrease of the resource consumption; and (3) the technical synergies, aimed to balance the number of active synergies.A synergyl∈S is active in a specific period t when a subset of its tasks is supported, and the cardinal of this subset has to be between a minimum and a maximum needed quantity [Slmin,Slmax].Constraints (16) and (17) are established to evaluate the fulfillment of Slmin, while constraints (18) and (19) establish the fulfillment of Slmax. That is, for all l∈S,t∈T, we declare the following constraints:(16)Sl+1σlt−≥∑i,j∈Slzijt−Slmin+1,(17)Sl+1σlt−≤∑i,j∈Slzijt−Slmin+Sl+1,(18)Sl+1σlt+≥Slmax−∑i,j∈Slzijt+1,(19)Sl+1σlt+≤Slmax−∑i,j∈Slzijt+Sl+1,(20)σlt=σlt−+σlt+−1.where σlt− takes the value of 1 when at least Slmin tasks of Sl are in execution in period t, and similarly, σlt+ takes the value of 1 when no more than Slmax tasks are in execution in period t. If both variables are equal to 1, then σlt will also take the value of one, and zero in other case (20).


## 3.2.5. Resource Consumption Synergies

Each active synergyC+∪C− in period t produces an additional value (positive or negative) in the consumption of resources of tasks belonging to the synergy. We denote the additional amount by vlt, and since this type of synergy does not affect all types of resources, the parameter vlt could be equal to zero. Constraints (21) and (22) establish the situation are as follows:(21)∑i,j∈Slxijrt≤∑i,j∈SlRijrtmaxzijt+vltσlt,l∈C+,r∈R,t∈T,(22)∑i,j∈Slxijrt≥∑i,j∈SlRijrtminzijt−vltσlt,l∈C−,r∈R,t∈T.Constraints (24)–(26) establish that the maximum and minimum amount to be assigned to tasks in synergies should have the enough flexibility to obtain more resources (in case of increment) or the flexibility to be reduced (in case of decrement in consumption of resources). For all i,j∈Sl,l∈C+,r∈R,t∈T, we define the following constraints:(23)xijrt≤Rijrtmaxzijt+vltσlt,(24)xijrt≤Rijrtmaxzijt+1−σlt+zijtθ.The value ofθ is a large number; in this case, the value of Mjrmin can be used.For alli,j∈Sl,l∈C+,r∈R,t∈T, we define the following constraint:(25)Rijrtminzijt−vltσlt≤xijrt.


## 3.2.6. Technical Synergies

The technical synergies can be seen asmetasynergies since they are designed to control the number of active synergies in each period. This also allows establishing relations between synergies, e.g., dependencies or incompatibilities. See constraints (26) where τtmin and τtmax are the minimum and maximum number of synergies to be declared active in the set τ. We denote Sτ as the set of technical synergies.(26)τtmin≤∑l∈τσlt≤τtmax,τ∈Sτ,t∈T.


## 3.2.7. Task Duration and Execution

Constraints (27) and (28) indicate that a task should be active for a number of periods equal to its duration (dij).(27)∑t∈Tzijt≤dij,i∈Ij,j∈J,(28)∑t∈Tzijt≥dijzijt′,i∈Ij,j∈J,t′∈T.Sometimes, it could be important for a specific type of project to have at least one active task by period. This additional limitation is stated in the following constraint:(29)∑i∈Ijzijt≤1,j∈J,t∈T.


## 3.2.8. Precedence Relations and Start Rule Constraints

For the establishment of precedence rules, we need to know the beginning and end period of the tasks. For this, the decision variableswij− and wij+ are needed.With constraints (30)–(32), the first period in which task i in project j is active is obtained. Then, the last period of execution is calculated by constraints (33)–(35). The following constraints apply for all i∈Ij,j∈J,t∈T:(30)wij−≤θ11−zijt+tzijt,(31)wij−≥tzijt−t∑t′<tzijt′,(32)wij−≤Tzijt,(33)wij+≤tzjit+θ2dij−∑t′<tzijt′+θ21−zijt,(34)wij+≥tzijt,(35)wij+≤Tzijt.We refer to thestart rule policy as the policy that implies a precedence relation with a pair of tasks in which one of them has to start only after the end of the other task. For simplicity in the notation, hereinafter, we denote two particular tasks with a sequential precedence relation as ξ and ξ′.(i)
The first group of constraints (36) should consider the following: when the tasks ξ and ξ′ are selected to be supported, then if ξ′ starts in a period t, then ξ has to start in period t′ where t′>t. Note that, if task ξ′ is supported, then task ξ also has to be supported.(36)wξ′+≤wξ−,ξ,ξ′∈Q,whereQ is the set of task pairs under this rule.(ii)
In the second precedence rule (37) and (38), there is a minimum and maximum number of periods (hpmin, hpmax) between the end and start period of the conditioned tasks. For these constraints, we know that if task ξ′ is supported, then task ξ also has to be supported.(37)wξ−≥wξ++hpmin∑t∈Tzξdξ,ξ,ξ′∈Q′,(38)wξ−≤wξ++hpmax∑t∈Tzξdξ,ξ,ξ′∈Q′,whereQ′ is the set of task pairs under this rule, and p=ξ,ξ′∈Q′.(iii)
The start rule helps to establish a minimum or a maximum period in which a taskξ must be started. For each task under this rule ξ∈Q″, we denote tξminytξmax as the minimum period and the maximum period (see constraints in (39) and (40)).(39)wξ−≥tξmin∑t∈Tzξdξ,ξ∈Q″,(40)wξ−≤tξmax,ξ∈Q″.Finally, let us denote the nonnegativity constraints as follows:xijrt≥0,wij−≥0,wij+≥0.


## 3.3. Remarks

To exemplify the interdependent groups, six one-task projects competing for funding and one interdependent relation group of projects are considered. In a natural way, the relative importance of the unique task by the project should be equal to one.Then, consider the following data:(i)
Projects: ID1, ID2, ID3, ID4, ID5, ID6(ii)
Project impact: 7.9, 3.4, 4.7, 9.1, 2.4, and 5.1, respectively(iii)
Requested amount for project (and task): $1000, $2500, $1300, $890, $740, and $2400, respectively(iv)
Minimum amount of resources for project (and task): $750, $2200, $1300, $890, $740, and $2400, respectively(v)
Duration: 2, 2, 3, 4, 3, and 2 periods, respectively(vi)
Projects in the interdependent group: ID1, ID2, ID3(vii)
The total resources needed by task are considered as equal for any period in which are executed(viii)
Precedence rules and start and end rules are not considered in this numerical example(ix)
The six projects belong to one areaIn case projects #1, #3, and #6 are financed, then a total maximum amount of resources of $5180.00 could be allocated and a minimum amount of $ 4450.00. Suppose that if these three projects require a system or laboratory, which is under the supervision of one institute, then it is possible to have an additional cost to administrate this resource.Then, in case that the projects #1, #3, and #6 are selected at the same time to be carried out, in the same period(s), the additional costυlt will increment the total amount allocated in this quantity, and the additional amount will be allocated in different forms: allocated to just one project, two projects, or in a shared way. If this cost is not convenient, then the additional cost could be avoided by not selecting the three projects at the same time. So, the negative synergistic cost will have no effect.


## 4. Computational Experiments

In order to show the efficiency of the proposed model, we carried out a set of experiments with instances generated with different characteristic levels. In this section, we describe the characteristics and how the instances were generated.In Table3, the levels for each characteristic are stated, and note that, the number of synergies and precedence rules are a percentage of total tasks in all projects. Hereafter, when we refer to the precedence rules, we also include the start rule for simplicity in the description.Table 3
Characteristics and levels to determine each set of instances.
CharacteristicLevelsNumber of projects (P)16, 32, 64, 128Number of tasks by projects (T)8, 16Grade of synergies0, 1%Number of areas (A)1Periods in time horizon (H)4, 6, 8Grade of precedence rules0, 2.5%, 5%The mathematical model includes the objective function (4) and constraints (5)–(28) and (30)–(40) previously defined. Because the objective function (4) is applied for the one-type resource (money), the index r will be omitted without loss of generality.(41)Max∑j∈JWj∑i∈Ij∑t∈Tμijtρijdij+∑t∈T∑l∈C−C+∪C−υltσlt.


### 4.1. Design of the Experiment

We name the sets of instances as P#T#A#S#H#R#_#, where the symbol # is replaced by the level in each characteristic, and the last symbol corresponds to the number of instances in a set. For example, the set named as P16T8S0A1H4R0_1 indicates instance 1 with 16 projects each one with 8 tasks, and there are zero synergies, all the projects belong to area 1, the time horizon has four periods, and zero precedence rules are included. The total number of synergies is obtained asS=P × T × (grade of synergies), and the total number of precedence rules is obtained as R = P × T × (grade of preference rules).In the first phase of the experiment, a subset of five instances was generated and solved for each combination of the corresponding characteristic levels. The second phase is dedicated to studying the individual impact of each type of precedence rules, so instances were executed where a single type of rule is assigned, and this is by using the 2 levels previously defined. In this phase, the four levels of projects are also used, giving us 24 subsets of instances.The model was coded with IBM CPLEX Optimization Studio 12.8, and the solution algorithm applied was the Branch and Bound algorithm. A total of 144 + 24 = 168 subsets with 5 instances were solved to optimality on a computer with an Intel i7 at 2.5 GHz and 8 Gb of RAM.In addition, the sets of instances in the first experiment were solved using the CPLEX parameterrelative MIP gap tolerance considering the 0.10 and 0.20 levels to provide a preliminary perspective of quality loss versus solution time. The latter can be a first point of reference for the decision process in large-scale cases with limited time.


### 4.2. Instance Generation

For the instance generation, the input values were established according to Table3. In all cases, just one category of benefit and one type of resource (money) were included.Project impact was stated with a uniform distributionU3,10. The minimum resources needed were stated through the distribution U100,200 multiplied by the number of tasks in a project. And, in a similar way, the maximum amount of resources was obtained U200,300 multiplied by the number of tasks in a project. The number of areas and the number of tasks are the same for all projects.For tasks, their duration was stated randomly between one period and half of the total periods in the time horizon. The minimum amount of resources by execution period was stated byU50,100 and the maximum with U100,150. Each task has a value of relative importance over the project impact, and this value is lower than one, and the sum of all task values for a project is equal to one.The total budget by period was stated withϕ×U70,100, where ϕ represents the total number of tasks calculated by the sum of the task in all projects, i.e., (number of projects) × (number of tasks). In all instances, all projects belong to one area, so there is no need to balance the resources between different areas.The quantity of synergies (S) was calculated asϕ×grade of synergies, and the number of tasks in one synergy is obtained randomly with a value between 2.5% and 5% of total tasks. In a similar way, the number of precedence rules is obtained by multiplying ϕ by the grade of precedence rules. The type of precedence rule was obtained randomly between the three types presented in Section 3.2.8. The tasks and projects involved in synergies also are selected randomly.


## 4.1. Design of the Experiment

We name the sets of instances as P#T#A#S#H#R#_#, where the symbol # is replaced by the level in each characteristic, and the last symbol corresponds to the number of instances in a set. For example, the set named as P16T8S0A1H4R0_1 indicates instance 1 with 16 projects each one with 8 tasks, and there are zero synergies, all the projects belong to area 1, the time horizon has four periods, and zero precedence rules are included. The total number of synergies is obtained asS=P × T × (grade of synergies), and the total number of precedence rules is obtained as R = P × T × (grade of preference rules).In the first phase of the experiment, a subset of five instances was generated and solved for each combination of the corresponding characteristic levels. The second phase is dedicated to studying the individual impact of each type of precedence rules, so instances were executed where a single type of rule is assigned, and this is by using the 2 levels previously defined. In this phase, the four levels of projects are also used, giving us 24 subsets of instances.The model was coded with IBM CPLEX Optimization Studio 12.8, and the solution algorithm applied was the Branch and Bound algorithm. A total of 144 + 24 = 168 subsets with 5 instances were solved to optimality on a computer with an Intel i7 at 2.5 GHz and 8 Gb of RAM.In addition, the sets of instances in the first experiment were solved using the CPLEX parameterrelative MIP gap tolerance considering the 0.10 and 0.20 levels to provide a preliminary perspective of quality loss versus solution time. The latter can be a first point of reference for the decision process in large-scale cases with limited time.


## 4.2. Instance Generation

For the instance generation, the input values were established according to Table3. In all cases, just one category of benefit and one type of resource (money) were included.Project impact was stated with a uniform distributionU3,10. The minimum resources needed were stated through the distribution U100,200 multiplied by the number of tasks in a project. And, in a similar way, the maximum amount of resources was obtained U200,300 multiplied by the number of tasks in a project. The number of areas and the number of tasks are the same for all projects.For tasks, their duration was stated randomly between one period and half of the total periods in the time horizon. The minimum amount of resources by execution period was stated byU50,100 and the maximum with U100,150. Each task has a value of relative importance over the project impact, and this value is lower than one, and the sum of all task values for a project is equal to one.The total budget by period was stated withϕ×U70,100, where ϕ represents the total number of tasks calculated by the sum of the task in all projects, i.e., (number of projects) × (number of tasks). In all instances, all projects belong to one area, so there is no need to balance the resources between different areas.The quantity of synergies (S) was calculated asϕ×grade of synergies, and the number of tasks in one synergy is obtained randomly with a value between 2.5% and 5% of total tasks. In a similar way, the number of precedence rules is obtained by multiplying ϕ by the grade of precedence rules. The type of precedence rule was obtained randomly between the three types presented in Section 3.2.8. The tasks and projects involved in synergies also are selected randomly.


## 5. Results

For the first phase, the average solution times of the 144 subsets of generated instances are reported in Table4. The results are separated by subset and by the grade of precedence rule. As it can be expected, in most cases, when periods in the planning horizon increased, the solution times also increased. The existence of synergies can also increase the solution times, and for instance P64T16S0A1H8R and P64T16S10A1H8R, for all levels for precedence rules, the solution times increased when synergies existed, but from subset P64T16S0A1H4R to P64T16S10A1H4R, the average solution time decreased.Table 4
Average of solution times for all subsets of instances.
SubsetAverage solution times (sec)Level for precedence rules0%2.5%5%P16T8S0A1H4R#1.291.261.65P16T8S0A1H6R#3.363.426.38P16T8S0A1H8R#6.7710.256.47P16T8S1A1H4R#3.072.522.6P16T8S1A1H6R#8.934.84.41P16T8S1A1H8R#8.756.829.92P16T16S0A1H4R#8.347.737.2P16T16S0A1H6R#10.1910.9714.44P16T16S0A1H8R#16.9616.0213.22P16T16S2A1H4R#7.348.427.13P16T16S2A1H6R#14.349.9410.39P16T16S2A1H8R#13.2352.0121.16P32T8S0A1H4R#12.415.9317.5P32T8S0A1H6R#25.0120.4725.28P32T8S0A1H8R#21.6515.3442.05P32T8S2A1H4R#14.789.2310.16P32T8S2A1H6R#22.7518.2145.59P32T8S2A1H8R#36.2423.8434.9P32T16S0A1H4R#16.422.3419.62P32T16S0A1H6R#47.9757.4135.59P32T16S0A1H8R#68.2570.0850.28P32T16S5A1H4R#31.5223.3916.8P32T16S5A1H6R#49.0578.595.42P32T16S5A1H8R#86.7175.34179.44P64T8S0A1H4R#24.6317.3823.74P64T8S0A1H6R#43.9950.6835.38P64T8S0A1H8R#74.0280.5477.93P64T8S5A1H4R#20.1322.624.84P64T8S5A1H6R#42.2349.1846.48P64T8S5A1H8R#87.0578.07174.29P64T16S0A1H4R#51.0559.1458.58P64T16S0A1H6R#110.55117.43103.84P64T16S0A1H8R#182.01202.12246.8P64T16S10A1H4R#57.244.4442.08P64T16S10A1H6R#395.98392.64173.11P64T16S10A1H8R#710.213228.51428.46P128T8S0A1H4R#58.2941.2261.46P128T8S0A1H6R#89.44131.76133.65P128T8S0A1H8R#247.73186.72266.86P128T8S10A1H4R#81.5162.2560.53P128T8S10A1H6R#140.11385.47341.19P128T8S10A1H8R#4113.09511.222589.2P128T16S0A1H4R#247.35241.94244.92P128T16S0A1H6R#330.38447.95267.04P128T16S0A1H8R#567.99564.01703.05P128T16S20A1H4R#96.75134.28198.045P128T16S20A1H6R#906.472190.11294.67P128T16S20A1H8R#1710.8324975.62816.83For the inclusion of precedence rules, it was clearly observed that a larger percentage of precedence rules did not imply an increase in average time. For example, subset P64T16S10A1H8, instances without precedence rules, took 710.21 seconds on average to be solved, with a grade of precedence rules level of 2.5%; that is,R = 64 × 16 × 0.025 = 25.6≈25 precedence rules, the average time is 3228.51 seconds and 428.46 seconds with a synergy level of 5% (51 precedence rules). It is important to note that if there are precedence rules, they are selected randomly between the three types defined in Section 3.2.8.To provide a preliminary perspective of the model quality loss versus solution time, the sets of instances were solved by changing the parameterrelative MIP gap tolerance. This parameter indicates to CPLEX to stop when an integer feasible solution has been proved to be within a requested percentage of optimality.The complete data of this experiment can be found in Supplementary materials (Section10); the information is classified by subset and level of precedence rules. Table S2 shows the average solution time when gap tolerance is limited to 10%, although no set of instances obtains that value, since the highest gap is 8.24% in the subset P128T8S10A1H6R # with a level of 2.50% in precedence rule, while the smallest value is 0.15% (optimality) in the subset P128T8S0A1H4R # with 5% as the level of precedence rule. The same behaviour is observed in Table S3, the instances with a gap tolerance of 20%, and the actual gap obtained is between 0.15% and 15.5%. In addition to this, in all cases, Tables S2 and S3, the time reduction increases as the number of projects increases, which is observed more clearly in Table S4.In supplementary, the distribution of the results has been summarized in Table5, indicating the mean and median on time and gap obtained. When 10% of gap is required, on average, the decrease of time solution was 72.7% getting an actual gap of 2.91%, whereas the gap is limited to 20%, and among all the sets of instances, an average gap of 5.96% is obtained, needing on average 78% of the solution time required to obtain the optimal solution (Table 4). We can observe that the proposed model allows to easily and efficiently obtain feasible solutions when optimality is not requested or when time is limited.Table 5
Gap reduction vs. time reduction.
Required gap (%)Reduction of solution time (%)Actual gap (%)MedianMeanMedianMean1074.072.72.662.912081.078.05.785.96In the second phase of the experiment, in order to study the impact of each type of precedence rules, the subsets P16T8S0A1H8R0, P32T8S0A1H8R0, P64T8S0A1H8R0, and P128T8S0A1H8R0 were used to add precedence rules of just one type of rule at the time. The information about resources, projects, and tasks remained unchanged. Figures3–6 show the variability of solution times by set of instances. The instance subset with 16 projects and without precedence rules or start rule constraints was solved in 6.77 seconds (average). For this subset, when rules were added (2.5%≈3 and then to 5%≈6), the average solution time decreased (see Figure 3). Then, the average solution times for the original subsets with 32 and 64 projects were 21.65 and 74.02 seconds, respectively. For both subsets, in most cases, the average solution time decreased, but in all cases, the solution was obtained in less than 1.5 minutes. Finally, in Figure 6, for the subset of 128 projects, the average solution times appear to be increasing as type 2 of precedence rules were added, and with the precedence rules type 1 and 3, the average solution times were slightly reduced.Figure 3
Average solution time for the subset with 16 projects and 8 tasks.Figure 4
Average solution time for the subset with 32 projects and 8 tasks.Figure 5
Average solution time for the subset with 64 projects and 8 tasks.Figure 6
Average solution time for the subset with 128 projects and 8 tasks.In addition, in all instances for this second phase of the computational experiment, the impact value of the portfolio did not change (the objective measure according with equation (5)) as well as the number of projects in the selected portfolio, using the levels of precedence rules indicated in Table 3. However, the tasks funded, and the resources allocated did change. For example, the solution of the instance P16T8S0A1H8R3_1 was a portfolio with 9 projects with an impact of 33.99 and a total of 37 selected tasks, and the selected projects were 1, 2, 4, 6, 7, 8, 9, 12, 13. The same instance solved without precedence rules resulted in the same impact and number of projects, but just 35 tasks were supported.The complete solution for instances P16T8S0A1H8R0_1 and P16T8S0 A1H8R3_1 is shown in Tables6 and 7, respectively. In both tables, the first column shows the project number; in the second column, the task number of that project is presented; then, third and fourth columns are presented the first and last period of execution of the task, respectively; in the fifth column, the total amount of resources allocated to the tasks is presented; and finally, the following columns show the percentage of resources allocated in each period (from the total in the fifth column). In Tables 6 and 7, the colours indicate the start and end of tasks, and it is important to note that a cell with no percentage is a period in which the corresponding task is paused. It means the model allows funding in continuous and noncontinuous periods.Table 6
Solution obtained for instance P16T8S0A1H8R0_1.Table 7
Solution obtained for instance P16T8S0A1H8R3_1.The inclusion of precedence rules changed the solution in several aspects among these are selected tasks in projects, assigned resources to tasks, and the periods when tasks were active. For example, task 1 in project 1 is still being supported in both cases, but without precedence rules, task 1 had an amount of resources assigned equal to 236, and when rules were added, the amount assigned was 282; as a consequence, the funding is in different proportion between periods. The increase in the resources assigned to a task translates into a greater assessment of the impact of the project. It is important to mention that both solutions are equivalent given that both provide the same impact portfolio and the same number of selected projects, but only Table6 incorporates the relations of precedence (precedence rules).In Table6, project #2 has three financed tasks, but in Table 7, the same project has four financed tasks. Another example is project #7, in which Table 6 appears to have just two financed tasks, while in Table 7, the same project has the double financed tasks. Therefore, the reallocation of resources allows to maintain the same impact and number of projects in the portfolio even when precedence rules are presently changing the execution periods of some tasks and/or periods.


## 6. Conclusions

In this work, a new mixed-integer linear programming model was developed to solve the PPSS. The proposed model integrates the project selection and project scheduling incorporating all relevant elements of both problems through project division into tasks allowing to determine when tasks will be funded and executed.In the first phase of computational experiments, instances with up to 128 projects were solved to optimality, and runtime was reported. The influence in time and in portfolio impact was also analysed in order to study the efficiency and performance of the proposed model.Then, the results obtained in the second phase of computational experiments showed that when a few precedence rules are added, then the resource allocation of tasks changes significantly even if the impact or the number of projects of the selected portfolios remains the same. Additionally, preliminary results have been obtained considering the establishment of tolerance levels to optimality that can be useful to solve limited time instances or cases. The results show the quality loss while the solution time gets significantly reduced according to the average solution times comparatively to the optimality case.



---

*Source: 4163287-2021-12-27.xml*