Solving a grey project selection scheduling using a simulated shuffled frog leaping algorithm

Solving a grey project selection scheduling using a simulated shuffled frog leaping algorithm

Accepted Manuscript Solving a grey project selection scheduling using a simulated shuffled frog leaping algorithm Homa Amirian, Rashed Sahraeian PII: ...

328KB Sizes 4 Downloads 99 Views

Accepted Manuscript Solving a grey project selection scheduling using a simulated shuffled frog leaping algorithm Homa Amirian, Rashed Sahraeian PII: DOI: Reference:

S0360-8352(17)30114-6 http://dx.doi.org/10.1016/j.cie.2017.03.018 CAIE 4670

To appear in:

Computers & Industrial Engineering

Received Date: Revised Date: Accepted Date:

16 December 2015 6 August 2016 14 March 2017

Please cite this article as: Amirian, H., Sahraeian, R., Solving a grey project selection scheduling using a simulated shuffled frog leaping algorithm, Computers & Industrial Engineering (2017), doi: http://dx.doi.org/10.1016/j.cie. 2017.03.018

This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.

Solving a grey project selection scheduling using a simulated shuffled frog leaping algorithm Homa Amirian, Rashed Sahraeiana Industrial Engineering Department, College of Engineering, Shahed University, Tehran, Iran. a. Corresponding author: E-mail: [email protected]

Solving a grey project selection scheduling using a simulated shuffled frog leaping algorithm Abstract This paper considers the integrated problem of project selection and scheduling in a tri-objective grey environment. First a pure integer model is proposed to optimize the time-dependent profits, total costs and total unused resources. Then the model is converted to a grey equivalent by considering some parameters as grey numbers. A discussion is given on the relations between these parameters and constraints of the model. Since the problem is strongly NP-hard, a modified grey shuffled frog leaping algorithm (GSFLA) is proposed to tackle the problem. To handle the greyness of the model, GSFLA is embedded in a loop of Monte Carlo simulation. The proposed algorithm is compared with two well-known meta-heuristics, non-dominated sorting genetic algorithm (NSGA-II) and multi-objective particle swarm optimization (MO-PSO). The results indicate that the proposed method shows better performance, both in intensification and diversification. Keywords: Project selection scheduling; Grey theory, Shuffled frog leaping algorithm, Monte Carlo simulation 1. Introduction Project selection scheduling is one of the most important strategic decisions in an enterprise and recently it has become a very active field of research. There are two approaches toward project selection scheduling. The first approach seeks to select several projects among the available options and schedule the selected projects subject to some constraints such as budget limits, available resources and due dates. In such problems, usually the objective is a function of expected profit (Tofighian & Naderi, 2015; Shahsavar, Najafi & Niaki, 2015; Jafarzadeh, Tareghian, Rahbarnia & Ghanbari, 2015; Tasan & Gen, 2013). The second approach creates a portfolio of projects as before, but then seeks to schedule each task of each project to minimize a function of time with regard to the earned profit (Rafiee & Kianfar &

Farhadkhani, 2014; Chen & Askin, 2009). Both of these approaches are referred to as project selection scheduling in the literature. In the current paper, the second approach is considered. Since a certain degree of uncertainty is always available in projects, recent researches focus on models that can handle this uncertainty in forms of stochastic, interval, fuzzy or grey values (Tavana, KhaliliDamghani, Sadi-Nezhad, 2013; Zhang, Mei, Lu & Xiao, 2011; Huang & Zhao, 2014; Shakhsi-Niaei, Torabi, Iranmanesh, 2011; Khalili-Damghani, Sadi-Nezhad, 2013). Similarly, uncertainty in this paper is addressed by grey values. Grey system theory is useful in cases with poor information and/or small samples since one characteristic of such systems is making the most and best use of the available "minimal amount of information" (Liu & Lin, 2006). In respect to project management, the data on the project parameters is usually a calculated estimate, not the precise value. The final result vastly relies on the correct estimation of these parameters, that is, imprecision in estimates leads to unreal results. However, providing a range for each parameter is easier than calculating an estimate of that parameter based on minimum information. This is especially true about the projects of technological innovations where available information is scarce. Even in highly common projects such as construction projects, grey numbers can be used. Razavi Hajiagha, Mahdiraji & Hashemi (2014) argued that considering the time, cost and quality of construction projects as grey numbers can aid in providing managers with the best combinations of trade-offs between the aforementioned parameters. They optimized the total cost, time and quality of the project using a combination of fuzzy goal programming and grey linear programming to find optimal ranges for the durations and start times of the project activities. Similarly Delgado & Romero (2016) use grey clustering method to quantify qualitative information of a mining project. San Cristóbal et al. (2015) insist that grey system theory is well suited to study the behaviour of S-curves in the projects where the information is either incomplete or limited. They propose a residual grey prediction model to forecast the actual and final cost of a project. Bhattacharyya (2015) uses the concept of grey uncertainty in R&D project portfolio selection problem where the decision makers' preferences and ratings of the attributes are considered as grey numbers. The problem at hand can be described as follows. Multiple projects are available to be pursued. Budgets and resources are limited and shared among the projects. Each project needs to meet a time limestone (i.e. due date). Each project has a pre-defined cost and percentage of progress. The percentage of progress in a period multiplied by the overall cost, indicates the amount of cost spent in that particular period. The precedence relationships between jobs are considered. If a project is started, then it may be interrupted to allow the completion of another project, but if a job is started, it has to continue until its completion without any interruption. The expected profit is a non-increasing function of time, i.e. the later a project is finished, the lower its achieved profit. Objectives are maximizing the time-sensitive expected profit, minimizing the overall cost and minimizing the unused resources. These objectives are in conflict with each other and thus they can be considered in a multi-objective problem. Optimization of profit and cost are in conflict because achieving more profits needs selecting more projects which means higher overall cost. Optimization of profit is likely to worsen the minimization of unused resources since the available resources are limited, but the model tries to select all the projects to increase the total profit. Minimizing cost and unused resources are in conflict because, in order to minimize the unused resources, the model selects projects that require more resources while this behaviour also increases the total cost. Since most of the project inputs (e.g. required resources, budget limits, durations, and profits) have a level of uncertainty by nature, some parameters in the model are considered as grey numbers. Project selection scheduling is proved to be NP-hard (Chen & Askin, 2009). In such cases, metaheuristics are good solution techniques for real-world problems. Similarly, in this paper, a grey modification of shuffled frog leaping algorithm (GSFLA) is proposed. Recently, SFLA has inspired a great

amount of interest in the field (Luo & Chen, 2014; Tripathy, Dash & Padhy, 2015). Part of this interest is due to the good performance of SFLA in both exploration and exploitation of the search space. Another part is due to the flexibility of the algorithm. SFLA can be easily adjusted to accommodate different problems. In this paper, the logic behind SFLA is used while the operators in each step of the algorithm are modified according to the problem. Among different approaches in handling the uncertainty of parameters, Monte Carlo simulation is one of the easiest and most flexible methods. For instance, Juan, Barrios, Vallada, Riera & Jorba (2014) add a loop of Monte-Carlo simulation to a genetic algorithm to solve a stochastic flowshop problem. Similarly, the proposed SFLA in our paper is embedded in a loop of Monte Carlo simulation to handle the grey values. The major contributions of this paper can be listed as follows. The proposed model is an extension of the study by Chen & Askin (2009). First, we modify their model by adding more applicable assumptions such as time limits, budget constraints and multiple objectives. Second, instead of their deterministic view, we convert some of the model's parameters to their grey equivalents to indicate the uncertainty in projects. Finally, a modified SFLA-Monte Carlo meta-heuristic is also proposed to solve the grey project scheduling problem. The rest of this paper is organized as follows. The following section proposes a new model for the problem of project selection scheduling. An example on the model and a discussion on grey parameters are also included in the section. The proposed GSFLA is explained in section 3. Section 4 discusses the results achieved from the experiments. The paper is then concluded in section 5.

2. The proposed grey project selection scheduling (GPSS) The proposed model is based on the single objective problem proposed by Chen & Askin (2009). Extending their model, we add time milestone for each project and periodical budget constraints. In order to enhance its applicability, the model is also considered in a multi-objective environment. The following notations are used within the paper. Decision variables

Yi X ijt

If project i is selected, it equals 1 and 0 otherwise If job j of project i completes at time t, it is 1 and 0 otherwise

Parameters and coefficients

i = 1,..., m h, j = 1,..., J i k = 1,..., K t = 1,..., T Pit Ci Rkt rijk

Project index Job indices

dij

Duration of job j of project i

Mi

Time milestone of project i

ptit

Percentage of progress for project i in period t

Type of resource index Period of time index Expected profit if project i ends at period t Estimated Cost of project i Maximum available resources of type k in period t Required resource of type k for job j of project i

EFij

Earliest finish time of job j in project i

LFij

Latest finish time of job j in project i

S ( j , h) BLt

Set of jobs where job j precedes job h Budget limit of period t

2.1. Mathematical formulation In this section, first the deterministic version of the model is examined. Since the expected profit of a project decreases with time, in maximizing the total profit of a project, we are simultaneously minimizing its completion time. Two major applications of time-sensitive profit function are in seasonal projects and in competitive environments. In seasonal projects, the profit of a project decreases vastly if it's not finished in a particular period of time. For instance, the release of a new brand of winter coat can be seen as a project that is best finished from November to February, not in mid-June. As for the presence of competitors, IT market is a very good example where a new brand of smartphone or tablet is released every day. In such an environment, timely release of a product is important since the available market can be easily swayed by other competitors. The model, then can be formulated as follows: m

max f1 = ∑

LFiJi



i =1 t = EFiJi

Pit . X iJi t

(1)

m

min f 2 = ∑ Yi .Ci

(2)

i =1

Ji K ⎛ T m ⎞ min f 3 = ∑ ⎜ (∑ Rkt ) − ∑ Yi .∑ dij .rijk ⎟ k =1 ⎝ t =1 i =1 j =1 ⎠

(3)

s.t . LFij

∑X

ijt

= Yi

∀i = 1,..., m; j = 1,..., J i

(4)

t = EFij LFih

∑ (t − d

ih

). X iht ≥ 0

∀i = 1,..., m; h = 1

(5)

t = EFih

LFij



t = EFij

t. X ijt ≤

LFih

∑ (t − d

ih

∀i = 1,..., m; j = 1,..., J i − 1; h = 2,..., J i ; ( j , h) ∈ S

). X iht

(6)

t = EFih

m

min{t + dij −1, LFij }

Ji

∑∑ r

ijk

.

i =1 j =1



X ijq ≤ Rkt

∀k = 1,..., K ; t = 1,..., T

(7)

q = max{t , EFij } LFiJi



t = EFiJi

t. X iJit < M i

∀i = 1,..., m

(8)

m

∑ Y .C . pt i

i

it

≤ BLt

∀t = 1,..., T

(9)

i =1

m

∑Y ≥ 1

(10)

i

i =1

X ijt ∈ {0,1}

Yi ∈{0,1}

∀i = 1,..., m; j = 1,..., J i ; t = EFij ,..., LFij

(11)

∀i = 1,..., m

(12)

The first objective in Eq. (1) maximizes the total profit of completed projects. Note that the profit Pit is achieved only when the last job of a project is completed. Eqs. (2) and (3) seek to minimize the total cost and total unused resources of the selected projects. Constraint (4) ensures that all jobs of a selected project are completed and, similarly, the jobs of unselected projects are never carried out. Eq. (5) makes sure that the starting time of the first job of each project has a positive value. Constraint (6) takes care of the precedence relationships. Eq. (7) enforces the resource limitations. Eq. (8) declares the milestone of each project. Constraint (9) sets a budget limit for a period’s expenditure. Note that the cost of each project in a period is depended on the percentage of its progress in that particular period (i.e. ptit ). Constraint (10) ensures that at least one project is selected. Finally Eqs. (11) and (12) declare the decision variables. The problem has m( J 2 + 2) + T ( K + 1) + 1 constraints and m( JT + 1) binary variables. 2.2. An illustrative example In this section, a small numerical example is provided and solved to validate the proposed model. Let us assume that five projects are available. For simplicity, only a single type of resource with the maximum amount of 4 in each period is considered. The time horizon has 11 periods. The estimated cost of each project and its number of jobs can be found in Table 1. The durations and the latest finish times of jobs are shown at Table 2. The expected profits of projects in different periods are concluded in Table 3. The precedence relationships between jobs of a project follow a serial relation e.g. if a project has n jobs, then job n − 3 precedes job n − 2 and job n − 2 precedes job n − 1 and so on. The time milestone, budget limit and finishing percentage are considered 11, 15 and 1 respectively, for all periods and projects. The required resource for each job is considered one unit and the earliest finish time of each job is similar to its duration. Table 1 – Cost and number of jobs of each project Project 1 Estimated cost 3 Number of 3 jobs

2 5 5

3 5 2

Table 2 – Duration and latest finish time of each job in a project

4 5 1

5 1 1

Project 1 Project 2 Project 3 Project 4 Project 5

Duration Latest Finish Duration Latest Finish Duration Latest Finish Duration Latest Finish Duration Latest Finish

1 9 1 5 5 9 1 11 1 11

1 10 3 8 1 11 -

1 11 1 9 -

1 10 -

1 11 -

Table 3 – Expected profits of each project in each period Time Periods Project 1 Project 2 Project 3 Project 4 Project 5

1 1 7 7 19 23

2 1 7 7 19 18

3 1 7 7 19 18

4 1 7 7 18.75 18

5 1 5 5 18.5 17

6 1 5 4 18.5 16

7 1 5 3 18.5 16

8 1 4 2 15 15

9 1 4 1 14 14

10 1 3 1 12 10

11 0 0 0 0 0

The payoff table created by solving the model for each objective alone is shown in Table 4. The table also indicates the corresponding solutions achieved by optimizing an objective. For instance, in maximizing the total profit, the achieved solutions are Y1 = Y2 = Y4 = Y5 = 1 which indicate that projects 1, 2, 4 and 5 are selected. Since in this case, the goal is to maximize the total profit and the profits are non-increasing function of completion times, the model chooses projects with highest profits and tries to finish them as soon as possible. As can be seen, project 1 is finished at period 5, project 2 at period 7 and finally, project 4 and 5 at period 1. The solutions are verified in Table 5, where it can be seen that they satisfy the time milestone, resources, budget, and precedence constraints. The objective value for total profit is P15 .x135 + P27 .x257 + P41.x411 + P51.x511 = 1(1) + 5(1) + 19(1) + 23(1) = 48 . This value for cost is

Y1.C1 + Y2 .C2 + Y4 .C4 + Y5 .C5 = (1)(3) + (1)(5) + (1)(5) + (1)(1) = 14 and similarly the value for unused 11

3

5

t =1

j =1

j =1

resources would be (∑ R1t ) − (Y1 ∑ r1 j1.d1 j ) − (Y2 ∑ r2 j1.d 2 j ) − (Y4 .r411.d 41 ) − (Y5 .r511.d51 )

which

equals to: (11× 4) − (1× (1×1 + 1×1 + 1×1)) − (1× (1×1 + 1× 3 + 1×1 + 1×1 + 1×1)) − (1×1×1) − (1×1×1) = 32 . A similar discussion can also be given for other objectives.

Table 4 – Payoff table of objectives and their corresponding solutions* Objective Profit Cost Resource Solutions

Max profit 48 14 32 y1 = y2 = y4 = y5 = 1 x111 = x124 = x135 = 1

Min cost 23 1 43 y5 = 1

Min unused-resource 23 14 27 y1 = y2 = y3 = y5 = 1

x511 = 1

x111 = x124 = x1 3 11 = 1

x211 = x224 = x235 = x246 = x257 = 1

x211 = x224 = x237 = x248 = x2 5 11 = 1

x411 = x511 = 1

x319 = x3 2 11 = x511 = 1

* Bold values indicate the optimized value.

Table 5 – Jobs resource usage, budget limit and precedence relationship* Periods Scheduled jobs Total req. resources Total req. budget

1 P1J1- P2J1 P4J1- P5J1 4 14

2 P2J2

3 P2J2

1 5

1 5

4 P1J2 P2J2 2 8

5 P1J3 P2J3 2 8

6 P2J4

7 P2J5

1 5

1 5

* Maximum available resources and budget in each period are 4 and 15 respectively.

2.3. Discussion on grey parameters In order to convert the deterministic model to a grey equivalent, first let us assume that ⊗1 ∈ [a, b]; a < b and ⊗2 ∈ [c, d ]; c < d are two interval grey numbers with known upper and

lower bounds, unknown expected values and unknown distributions. Also assume k and k ' are positive real numbers and le(⊗1 ) = [b − a ] is the length of grey number ⊗1 . Then the following equations hold true (Li, Yamaguchi & Nagai, 2007; Liu & Lin, 2006):

⊗1 + ⊗2 = [a + c, b + d ]

(13)

⊗1 − ⊗2 = [a − d , b − c]

(14)

⊗1. ⊗2 ∈ [min{ac, ad , bc, bd }, max{ac, ad , bc, bd }]

(15)

In Eq. (15), if a, b, c, d > 0 then it can be written as ⊗1. ⊗2 = [ac, bd ] .

k . ⊗1 ∈ [ka, kb] P(⊗1 ≤ ⊗2 ) =

max(0, le(⊗1 ) + le(⊗2 ) − max(0, b − c)) le(⊗1 ) + le(⊗2 )

(16) (17)

In Eq. 17, P(⊗1 ≤ ⊗2 ) is the degree of grey possibility where four alternatives may occur:

I.

If a = c, b = d then P(⊗1 ≤ ⊗2 ) = 0.5 and ⊗1 = ⊗2 .

II.

If c > b then P(⊗1 ≤ ⊗2 ) = 1 and ⊗1 < ⊗2 .

III.

If d < a then P(⊗1 ≤ ⊗2 ) = 0 and ⊗1 > ⊗2 .

IV.

If the grey numbers have shared intervals, then if P(⊗1 ≤ ⊗2 ) > 0.5 , then ⊗1 < ⊗2 and if

P(⊗1 ≤ ⊗2 ) < 0.5 then ⊗1 > ⊗2 . If the parameters in the proposed model in section 2.1 are considered grey, then their defined intervals should follow specific relations so that the constraints (5)-(9) would still hold. For instance in Eq. (5), the finish time t is grey by definition since it changes between LF and EF . If we assume duration as a grey parameter ⊗d ∈ [d , d ] , then constraint (5) is converted to the following equation:

(⊗t − ⊗d ). X ≥ 0

(18)

Since X ultimately gets a positive value, it can be replaced with a real positive number k as follows:

(⊗t − ⊗d ).k ≥ 0

(19)

(k . ⊗ t − k . ⊗ d ) ≥ 0

(20)

[k .EF , k .LF ] ≥ [k .d , k .d ]

(21)

If ⊗1 = [k .EF , k .LF ] and ⊗2 = [k .d , k .d ] , then according to Eq. (17),

in order to satisfy

constraint (5), the following equation should be either zero (Case III) or lower than 0.5 (Case IV): P(⊗1 ≤ ⊗2 ) =

max{0, k .LF − k .EF + k .d − k .d − max(0, k .LF − k .d )} k .LF − k .EF + k .d − k .d

(22)

In the current problem, for simplicity, three parameters are assumed as grey numbers. In practice, the information regarding the cost of a project ( ⊗ C ), its duration ( ⊗ d ) and the budget limit ( ⊗ BL ) for each period are usually uncertain values and thus, they are assumed as grey parameters. As a result, for constraints (6), (8) and (9), similar analyses are carried out where we should have 0.5 < P (⊗1 ≤ ⊗ 2 ) ≤ 1 (Eq. (23)-(25)): LF

∑ t j .X ≤

t = EF

LF

∑ (t

h

− dh ).X → [k.EFj , k.LFj ] ≤ [k.EFh − k.dh , k.LFh − k.dh ]

t = EF

P(⊗1 ≤ ⊗2 ) =

max{0,(k.LFj − k.EFj ) + (k.LFh − k.dh − k.EFh + k.dh ) − max(0, k.LFj − k.EFh + k.dh )} (k.LFj − k.EFj ) + (k.LFh − k.dh − k.EFh + k.dh )

(23)

LF

∑ t. X < M → [k.EF , k.LF ] < [M , M ]

t = EF

(24)

max{0, k .LF − k .EF − max(0, k .LF − M )} P(⊗1 ≤ ⊗2 ) = k .LF − k .EF

∑ Y .C . pt ≤ BL → k.k '.∑ ⊗C i

i

P (⊗1 ≤ ⊗2 ) =

i

Eq .13 ≤ ⊗ BL ⎯⎯⎯ → k .k '. ⊗ C ≤ ⊗ BL

i

(25)

max{0, k .k '.C − k .k '.C + BL − BL − max(0, k .k '.C − BL)} k .k '.C − k .k '.C + BL − BL

2.4. An example on grey intervals For the first project in section 2.2 which has 3 jobs, let us assume the following intervals and test the validity of Eqs. (22) - (25).

Let d = [1, 0.1,0.2] , d = [2, 0.3, 0.5] , EF = [1,1,1] ,

LF = [9,10,11] ,

C = [1,1,1,1,1] ,

C = [5,10,10,10,3] , BL = 16 , BL = 15 and M = 11 for all periods. Eq .22, k =1 ⎯⎯⎯⎯ → P (⊗1 ≤ ⊗ 2 ) = max{0,9 − 1 + 2 − 1 − max(0,9 − 1)}

9 −1+ 2 −1

=1

8

< 0.5

Similar calculations for the second and third jobs will result in zero. As expected, all the values = 0.5174 . are lower than 0.5. For Eq. (23), if j = 1, h = 2 then we have P(⊗1 ≤ ⊗2 ) = 8.9 17.2 = 0.5077 and for j = 1, h = 3 , we have Similarly for j = 2, h = 3 , the result would be 9.8 19.3 9.8 = 0.5355 . Clearly all the values are between 0.5 and 1. Replacing the values in Eqs. (24) 18.3 and (25), result in P (⊗1 ≤ ⊗2 ) = 1 for all jobs. 3. A modified shuffled frog leaping for GPSS

In this section, an algorithm based on SFLA and Monte Carlo simulation is proposed to solve the problem. The classic SFLA is a population based meta-heuristic which combines the idea behind particle swarm optimization with that of memetic genetic algorithm. SFLA balances between intensification and diversification using three mechanisms: local search, global search and censorship. The algorithm commences with the initialization of a population which consists of random solutions (i.e. virtual frogs). The next step is to divide the frogs into different groups (i.e. memeplexes). The partitioning process should be balanced so that each group includes both good and less desirable solutions. Traditionally, the division is performed randomly. However, logical approaches can guarantee more balanced memeplexes. Once the frogs are grouped into different memeplexes, the best and/or the worst frog(s) within memeplexes are identified and improved. In other words, dividing the population gives each frog the chance to be selected the best or the worst solution, depending on which memeplex it is assigned to. This independent evolution of each memeplex is the equivalent of local search in other meta-heuristics. Local search improves the population somewhat but increases the diversity at the same time. To balance this increase,

the algorithm enters the global search phase, where the best and/or the worst solution(s) of the entire population are improved, thus improving the intensification. The last step in the evolution phase, is censorship. This step is conditional, that is, if local and global search fail to improve the worst frog, then in censorship phase, the worst frog is omitted and replaced by a new individual. After the evolution step, the frogs are shuffled, dissolving the memeplexes, and are sorted according to their fitness. The next generation starts with new partitioning of the population and the algorithm continues until it meets a stopping criteria. Similarly, the proposed SFLA for GPSS (i.e. GSFLA) can be explained as follows: 3.1. Initialization 3.1.1. Creating new model Since some parameters in the model are grey numbers, they can get any value in a predefined range, ⊗∈ [a, b] . New values for these parameters, result in a new model in every run. To treat the uncertain nature of grey parameters, Monte Carlo simulation is used. That is for every run of the simulation, new random values are generated from predefined ranges to represent the whitened values of the grey parameters. This way, the SFLA begins with a crisp new model every time.

3.1.2. Encoding scheme Decision variable Yi , is represented by a vector of 1× i variables. For instance, in the problem of section 2.2, Y1 = Y2 = Y4 = Y5 = 1 is represented as [1 1 0 1 1] . Similarly, for decision variable

X i j t , a i × j × t binary matrix is needed. In problem of section 2.2, for instance, for the first project which has 3 jobs to be completed during 11 time horizons, X 111 = X 124 = X 135 = 1 is represented as follows: ⎡1 0 0 0 0 0 0 0 0 0 0 ⎤ ⎢0 0 0 1 0 0 0 0 0 0 0 ⎥ ⎢ ⎥ ⎢⎣0 0 0 0 1 0 0 0 0 0 0 ⎥⎦

3.1.3. Creating feasible population In the current algorithm, first a group of random projects that satisfies the budget limitations is selected. Once vector Yi is determined, for the jobs of the selected projects, random time periods are selected in a way that satisfy constraints (1)-(8). This constructs the matrix X i j t . For instance, for the problem in section 2.2, project 1 was selected randomly. This project costs 3 units which is lower than the available budget limit of 15, so it satisfies constraint (9). Once project 1 is selected, for its three jobs, the matrix X 1 j t should be created in a way than the first job precedes the second job. In other words, for T time horizons, if job 1 finishes at random period t1 , the second job can finish in any random periods [t1 + d 2, T ] where d 2 is the duration of the second job. Similarly the third job can finish in any random periods between t 2 + d 3 and T. This way a random but feasible population is created.

3.2. Partitioning A study by Kashtiban & Ahandani (2009) showed that a new type of partitioning named Geometric Partitioning (GP) results in better performance than the traditional random partitioning. GP partitions the frogs according to their geometric positions in the search space. Assume s and m are the numbers of frogs and memeplexes, respectively. As a result each memeplex should have n = s / m members. In GP, first m frogs are chosen randomly, one for each memeplex. These are referred to as cluster points. For each cluster point, the Euclidian distances from any other non-cluster points are calculated. For the first memeplex, the first n − 1 frogs with the smallest distances from the memeplex’s cluster point are chosen. These n − 1 frogs, in addition to the cluster point itself, create a memeplex with n frogs. Then the members of this memeplex are set aside and the process is repeated for other cluster points using the remaining frogs. 3.3. Evolution 3.3.1. Local search In this phase, first the best and worst solutions of each memeplex are determined. Since the problem under study has multiple objectives, the selection mechanism, which is based on rank and crowding distance, has been borrowed from NSGA-II (Deb, Pratap, Agarwal, & Meyarivan, 2002) to sort the frogs in each memeplex. The best (worst) frog would be the individual with lowest (highest) rank and greatest (smallest) crowding distance, respectively. Next, X i j t of best

and worst frogs are improved by shifting the jobs to the left using the shift operator while Yi remains unchanged. The idea behind using this operator is to finish the projects as soon as possible so that higher profits are achieved. If this shift results in infeasibility, the old solution remains untouched. Otherwise, the new solution replaces the old one. For every job, every time that a shift occurs, the feasibility of the solution should be checked before shifting other jobs. The pseudo-code of local search phase is shown in Fig. (1). The shift operator can be described as follows: ⎡0 0 1 0 0 ⎤ Shift −to −left ⎡0 1 0 0 0 ⎤ ⎢0 0 0 1 0 ⎥ ⇒ ⎢0 0 1 0 0 ⎥ ⎢ ⎥ ⎢ ⎥ ⎢⎣0 0 0 0 1⎥⎦ ⎢⎣0 0 0 1 0 ⎥⎦

Procedure: Local search phase For each memeplex { Non-dominated sorting Calculate ranks Calculate crowding distance(CD) Sort according to lowest ranks and highest CD Dedicate the first and last individuals as the best and worst local frogs, respectively Determine the selected projects of best (worst)

frog For each selected projects For each job of a selected project { Shift the job to the left using shift operator Check feasibility Replace the old solution if feasible } }

Fig 1. Local search pseudo code

3.3.2. Global search This phase is quite similar to the local search except that non-dominated sorting is carried out on the whole population to find the best and worst global solutions. The jobs of selected projects in these solutions are shifted to the left and accepted if they are feasible. 3.3.3. Censorship In the proposed algorithm, instead of replacing the worst frog with a new solution, four new frogs are added to the population and none of the frogs are omitted. These frogs are added in the hopes of finding the extreme points in respect to each objective. Each of these four frogs are created in favor of one or two objective functions with roulette wheel selection. Roulette wheel selection gives priority to the option with highest probability. At the same time it also gives a chance to the less desirable options to be selected, even though their selections are not likely. The first frog is created in a way to maximize the total profit. In other words, while constructing Yi , priority of selection is given to the project with the highest profit. The pseudo code of this process is shown in Fig. (2). The second frog seeks to minimize the total cost by first, choosing the cheapest project among the available options and second, to choose as few projects as possible (Fig. 3). The third frog moderates between profit and cost by giving the priority of selection to the projects that have higher Pi1 / Ci ratios. The pseudo code of this frog is the same as the first frog except that Pi1 is replaced by Pi1 / Ci . Finally, to minimize the unused resources, projects which require more resources in total have higher chances of getting selected. Once again, the pseudo code of the process is similar to the first frog but Pi [1] / ∑ Pi [1] is replaced by



j, k

ri j k / ∑ i , j , k ri j k .

Procedure: Creating a frog for max profit Q=List of available projects Repeat until Q is empty { For all projects i=1: Q Pi [1] } { p (i ) = Pi [1] /



Project=Roulette wheel selection ( p ) Check the feasibility of choosing the "Project" according to Eq. (9)

If the solution is feasible { Y(Project)=1 } Delete Project from Q }

Fig 2. Pseudo code of creating max profit frog Procedure: Creating a frog for min cost Q=List of available projects Repeat until Q is empty { For all projects i=1: Q { p (i ) = (1/ Ci ) / (1/ Ci ) }



Project=Roulette wheel selection ( p ) Check the feasibility of choosing the "Project" according to Eq. (9) If the solution is feasible { Y(Project)=1 Break from the loop } Delete Project from Q }

Fig 3. Pseudo code of creating min cost frog 3.4. Shuffling Shuffling in SFLA dissolves the partitions and sorts the population. Since the problem is multiobjective, this step consists of calculating ranks and crowding distances of all the population and sorting them accordingly.

The overview of the proposed algorithm is outlined in Fig. (4). Procedure: The proposed GSFLA Repeat for certain number of simulation runs { Initialization Create a new model according to grey intervals Create feasible initial population Repeat until the termination criteria is not met { Create memeplexes by partitioning Evolution Local Search in each memeplex Global Search in the whole population Censorship Create max profit frog Create min cost frog Create max profit/min cost frog Create min unused resources frog Add the frogs to the current population

Shuffling and truncating } Record the results }

Fig 4. Pseudo code of the proposed algorithm 4. Evaluation 4.1. Performance metrics A meta-heuristic algorithm should be designed in a way to fulfill two characteristics, the intensification and the diversification of the achieved solutions. The former ensures that the algorithm is headed towards the optimal front. The latter guarantees variety in the achieved solutions. In the current paper, in addition to computational time, three other well-known metrics are used. Error ratio and overall non-dominated vector, measure the convergence while maximum spread gauges the diversity of the achieved solutions.

4.1.1. Error ratio (ER) ER can be defined as follows: n

ER =

∑e

i

i =1

n

(26)

where n is the number of solutions in the achieved Pareto front. Here, ei = 0 if the difference between i th solution and the Pareto optimal set is lower than a predefined epsilon (i.e. gap, which is usually set to zero), and ei = 1 otherwise. Lower values of ER are desirable 4.1.2. Overall non-dominated vector generation (ONVG) ONVG counts the number of the solutions in the obtained Pareto front. Higher ONVG indicates better exploration of the search space and thus better performance. 4.1.3. Maximum spread (MS) The normalized version of MS is used in cases where the objective functions have different ranges. MS gauges the distance between the solutions in the obtained Pareto front. Let n be the number of solutions found, f ki is the value of k th ; (k = 1,..., K ) objective for the i th ; (i = 1,..., n) solution, f kmax and f kmin are the maximum and minimum values of the k th objective respectively. The normalized MS is formulated as follows where the values closer to 1 are preferred.

MS = MS

1 K

⎡ maax f ki − min m f ki ⎤ i∈N NDS i∈NDS N ⎢( )⎥ ∑ m max f k − f kmin ⎥⎦ k =1 ⎢ ⎣

2

K

(227)

4.22. C Calibbraation Thee pparaameeters of thhe pproppossed SF FLA A arre thhe m maxim mum m itteraations of thee alggorrithm m ((maaxItt), tthe poppulaatioon sizee (p (popp ssize)) aand thee nnum mber oof m mem mepplexxes.. Thhe parram meteers aree tuuneed usinng Taggucchi meethood. In muultii-obbjecctivve pprobblem ms,, fiirst thee pperfform mannce meetriics of eacch triaal aare callcullateed aand thee weeighhted aaverragee off thhe m metrricss arre usedd ass thee reespoonsse. T Theen tthe ressponnsee is connveertedd too siignaal-to-nnoisse (SS/N N) raatioo ussingg thhe ffolloowiing eqquattionn whherre N n iis nnum mberr off ruuns forr trial n annd yu iis thhe rrespponnse forr ann exxperrim mentt. ⎛ 1 S / N n = −110 log ⎜ ⎝ Nn

Nn

∑y

2 u

u =1

⎞ ⎟. ⎠

(228)

In tthiss stuudyy, conssideerinng thhreee leeveels ffor eacch oof thhe tthreee ffacttorss ressultted in orthhoggonnal aarraay L9 (Taablee 66). T Thee aachiieveed opttimal llevels foor thhe parram meteers aree illlusstratted inn Fiig. (5)), w wheere sm malleer SS/N N is moore desiraablee. A Acccorddingg too Fiig. (5)), thhe oopttimaal lleveel ffor maaxim mum m itteraatioons andd nuumbberr off meemeepleexees iss leevell 2 w whiich coorrespoonds too vaaluees 11000 annd 110, resppecctivvelyy. The T poppulaatioon ssizee, hhow weveer sshows litttle difffereencce inn leevel 2 and 3 wiith a hhighher tenndencyy toowaard levvel 2 w which corrresspoondss too thhe vvaluue of 1000. T Thee raankk off eaach facctorr iss shhow wn iin T Tabble 7. Accorrdinng tto thhe ddelta vvaluues obbtainnedd, m maximuum iteeratiion is thee moost efffecttivee paaram metter w whiile thee poop ssizee haas thhe lleasst im mpaact..

Figg 5.. Thhe m meaan SS/N N rattio pploot foor ddiffeerennt lleveels/factorss Tabble 6 – Thhe oorthhoggonal aarraay L9 Triials M MaxxIt

P Popp Size

M Meemeppleex

1 2 3 4 5 6 7 8 9

50 50 50 100 100 100 250 250 250

50 100 300 50 100 300 50 100 300

5 10 25 10 25 5 25 5 10

Table 7 – Response table for S/N ratios Factors Max It Pop Size Memeplex Level 1 -10.34 -13.88 -15.01 Level 2 -20.03 -17.03 -19.04 Level 3 -17.80 -17.26 -14.11 Δ 9.69 3.39 4.93 Rank 1 3 2 4.3. An example on the convergence of grey simulation To investigate the convergence of the proposed algorithm, a grey equivalent of the problem in section 2.2 is solved by GSFLA and the results are compared to the exact deterministic values. In Table 8, around 77% and 88% of values are within 30% and 40% gap of the optimal Pareto front respectively (i.e. ER = 0.2320 and ER = 0.1260 ). For 50% gap, error ratio decreases to zero which indicates that all the values found are within 50% gap of optimal Pareto front.

Table 8 – Convergence of the simulated algorithm to the exact method* Metric Gap 30% ER 40% 50%

Simulation 0.2320±0.0180 0.1260±0.0310 0.0000±0.0000

Exact 0.0000

* Results are achieved by 3000 simulations and the lower error ratios are more desirable.

4.4. Testing on PSS 4.4.1. Test problem generation We compare the performance of the proposed algorithm with NSGA-II and MO-PSO (Rabbani, Aramoon Bajestani, Baharian Khoshkhou, 2010) on three different problem sizes: small, medium and large. Each set consists of 30 instances which are run for 3000 simulations. The computations are executed on a PC with Core i5, Windows 7 and 4 GB of RAM. Similar to the data generation methodology in Tofighian & Naderi (2015), small problems have 5-10 projects and less than 5 jobs per project. Medium problems have 10-20 projects and 5-10 jobs per project. Large sized problems have 20-30 projects and 10-20 jobs each. The generating rules for other parameters are shown in Table 9.

Table 9 – Strategy of generating test data Factor Number of projects Number of jobs for each project Number of types of resources Number of time periods

Generating rule

Time-sensitive profits for each project Cost of each project Maximum available resource of each type Resource requirements for each job Duration of each job Time milestone of each project

U (20,100) − 2 × t C = U (1, 20) R = 2U (1,5) r = U (1,5) d = U (1,5) M i = 2 × min(∑ j dij , LFJi )

Percentage of progress for each project Budget limit of each period

m = {5,10, 20,30} J = {1,..., 20} k = {1, 2} T = max{max(∑ j dij ), U (max(∑ j dij ), ∑ i , j dij )}

pt = {0.5,1} BL = 2 ×U (5, 20)

4.4.2. Discussion and results According to Table 10, on average, the proposed GSFLA shows better convergence in ER by 9.19% and 13.18% than MO-PSO and NSGA-II respectively. GSFLA finds 25.04% points more than the other two algorithms which indicates better exploration. In all datasets, GSFLA finds better spread of solutions (i.e. higher MS). However, it takes longer to calculate the results. This is due to the many loops in the proposed GSFLA in comparison to few simple loops of MO-PSO or NSGA-II. Moreover, ANOVA test for ER does not indicate any significant difference between the algorithms with p-values of 0.253, 0.693 and 0.026 for small, medium and large sets at 95% confidence level. However, the results for MS show significant superiority for all datasets with pvalues being lower than 0.05 (Table 11). Table 10 – Comparing the proposed SFLA with MO-PSO & NSGA-II Indicator

ER

ONVG

MS

Instance Small Medium Large Average

GSFLA

MO − PSO

NSGA − II

0.85±0.02 0.86±0.02 0.68±0.04 0.79±0.02

0.93±0.01 0.91±0.01 0.77±0.08 0.87±0.03

0.95±0.00 0.92±0.00 0.88±0.01 0.91±0.00

Small Medium Large Average

7.46±2.12 6.45±2.11 5.43±1.30 6.44±1.84

5.93±1.53 5.16±1.66 4.36±2.15 5.15±1.87

5.56±1.18 5.26±1.40 4.63±2.72 5.15±1.76

Small Medium Large Average

0.79±0.01 0.83±0.00 0.87±0.04 0.83±0.01

0.36±0.00 0.37±0.00 0.27±0.02 0.33±0.00

0.35±0.00 0.37±0.00 0.32±0.02 0.34±0.00

Indicator

Instance

GSFLA

MO − PSO

NSGA − II

Run Time

Small Medium Large Average

837.96 1136.55 2323.32 1432.61

563.26 1166.48 1854.74 1194.82

182.36 245.15 279.94 235.81

(sec)

Table 11 – ANOVA results for maximum spread Level Small Medium Large

DF 2 2 2

SS 0.386 0.430 0.678

MS 0.193 0.215 0.339

F 37.13 33.33 75.18

p-value 0.000 0.001 0.000

4.4.3. Comparison with other whitening methods Other methods of whitening (Liu & Lin, 2006) can be used to tackle grey numbers. In most cases,  , can be expressed as for a general interval grey number [a, b] , its whitenization value ⊗  = α .a + (1 − α )b where α ∈ [0,1] . Sometimes, the average of a range is simply considered as ⊗ the whitened value (i.e. α = 0.5 ). These methods are compared with the proposed simulation in Table 12. As can be seen, simulation returns lower ER but with worse variances, since unlike whitenization method, simulation covers all the range of an interval not the part that corresponds to a certain alpha. The results indicate that MS values are almost the same for all methods. Table 12 – Comparing the proposed simulation with other whitening methods ER MS

α = 0.5

α ∈ [0,1]

Simulation

0.72±0.01 0.52±0.00

0.67±0.06 0.45±0.00

0.49±0.09 0.51±0.00

5. Conclusion

In this paper, a multi-objective project selection scheduling problem is considered in grey environment. The problem is modelled and solved using a modified meta-heuristic. One important conclusion is that unlike deterministic parameters, grey parameters follow specific relations with constraints and with each other. A second conclusion is that, in bi-level problems such as project selection scheduling, searching on both levels using discrete operators such as shift can vastly improve the performance of an algorithm. In the proposed algorithm, the performance was improved slightly in intensification and immensely in diversity. Future researches may involve developing mechanisms to decrease the run time and to add more realistic assumptions to the project selection model.

References

Bhattacharyya, R. (2015). A grey theory based multiple attribute approach for R&D project portfolio selection. Fuzzy Information and Engineering, 7(2), 211-225. Chen, J., & Askin, R. (2009). Project selection, scheduling and resource allocation with time dependent returns. European Journal of Operational Research, 193(1), 23-34. Deb, K., Pratap, A., Agarwal, S., & Meyarivan, T. (2002). A fast and elitist multi-objective genetic algorithm: NSGA-II. IEEE Transactions on Evolutionary Computation, 6(2), 182-197. Delgado, A., & Romero, I. (2016). Environmental conflict analysis using an integrated grey clustering and entropy-weight method: A case study of a mining project in Peru. Environmental Modelling & Software, 77, 108-121. Huang, X., & Zhao, T. (2014). Project selection and scheduling with uncertain net income and investment cost. Applied Mathematics and Computation, 247, 61-71. Jafarzadeh, M., Tareghian, H. R., Rahbarnia, F., & Ghanbari, R. (2015). Optimal selection of project portfolios using reinvestment strategy within a flexible time horizon. European Journal of Operational Research, 243(2), 658–664. Juan, A., Barrios, B., Vallada, E., Riera, D., & Jorba, J. (2014). A simheuristic algorithm for solving the permutation flow shop problem with stochastic processing times. Simulation Modelling Practice and Theory, 46, 101-117. Kashtiban, A. M., & Ahandani, M. A. (2009). Various strategies for partitioning of memeplexes in shuffled frog leaping algorithm. In Computer Conference, 14th International CSI, 576-581. Khalili-Damghani, K., & Sadi-Nezhad, S. (2013). A decision support system for fuzzy multiobjective multi-period sustainable project selection. Computers & Industrial Engineering, 64(4), 1045–1060. Li, G.D., Yamaguchi, D., & Nagai, M. (2007). A grey-based decision-making approach to the supplier selection problem. Mathematical and Computer Modelling, 46(3-4), 573-581. Liu, S., Lin, Y. (2006). Grey Information: Theory and Practical Applications. USA: Springer. Luo, J., & Chen, M. (2014). Improved shuffled frog leaping algorithm and its multi-phase model for multi-depot vehicle routing problem. Expert Systems with Applications, 41(5), 2535–2545. Rabbani, M., Aramoon Bajestani, M., Baharian Khoshkhou, G. (2010). A multi-objective particle swarm optimization for project selection problem. Expert Systems with Applications, 37(1), 315-321. Rafiee, M., Kianfar, F., & Farhadkhani, M. (2014). A multistage stochastic programming approach in project selection and scheduling. The International Journal of Advanced Manufacturing Technology, 70(9), 2125-2137.

Razavi Hajiagha, S. H., Mahdiraji, H. A., & Hashemi, S. S. (2014). A hybrid model of fuzzy goal programming and grey numbers in continuous project time, cost, and quality tradeoff. International Journal of Advanced Manufacturing Technology, 71(1), 117–126. San Cristóbal, J. R., Correa, F., González, M. A., Navamuel, E., Madariaga, E., Ortega, A., López, S., & Trueba, M. (2015). A residual grey prediction model for predicting S-curves in projects. Procedia Computer Science, 64, 586 – 593. Shahsavar, A., Najafi, A., & Niaki, T. (2015). Three self-adaptive multi-objective evolutionary algorithms for a triple-objective project scheduling problem. Computers & Industrial Engineering, 87, 4-15. Shakhsi-Niaei, M., Torabi, S. A., & Iranmanesh, S. H. (2011). A comprehensive framework for project selection problem under uncertainty and real-world constraints. Computers & Industrial Engineering, 61(1), 226–237. Tasan, S., & Gen, M. (2013). An integrated selection and scheduling for disjunctive network problems. Computers & Industrial Engineering, 65(1), 65-76. Tavana, M., Khalili-Damghani, K., & Sadi-Nezhad, S. (2013). A fuzzy group data envelopment analysis model for high-technology project selection: A case study at NASA. Computers & Industrial Engineering, 66 (1), 10-23. Tofighian, A., & Naderi, B. (2015). Modeling and solving the project selection and scheduling. Computers & Industrial Engineering, 83, 30-38. Tripathy, B., Dash, S., & Padhy, S. (2015). Multiprocessor scheduling and neural network training methods using shuffled frog-leaping algorithm. Computers & Industrial Engineering, 80, 154–158. Zhang, W., Mei, Q., Lu, Q., & Xiao, W. (2011). Evaluating methods of investment project and optimizing models of portfolio selection in fuzzy uncertainty. Computers & Industrial Engineering, 61 (3), 721–728.

Highlights

• • • • •

A multi-objective grey project selection scheduling model is proposed. The model takes into account the resource and budget limitations. A modified SFLA algorithm is proposed to tackle the problem. Monte Carlo simulation is used to handle the grey uncertainty. The proposed SFLA showed great diversity and acceptable intensification.