On the Scalability of Multi-objective Metaheuristics ... - Semantic Scholar

4 downloads 53186 Views 5MB Size Report
Problem: assign employees to tasks with a given dedication degree. • What is the ... Maximum dedication. Skills ..... Rank the fireflies and find the current best.
Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

On the Scalability of Multi-objective Metaheuristics for the Software Scheduling Problem

Francisco Luna, David L. González-Álvarez, Francisco Chicano, Miguel A. Vega-Rodríguez ISDA 2011, Córdoba, Spain, November 22-24

1 / 28

Introduction

Software Project Scheduling

Experiments & Results

Algorithms

Conclusions & Future Work

Introduction •  •  •  •  • 

Current software projects are very complex They can involve hundreds of people and tasks An efficient way of assigning employees to tasks is required An automatic software tool can assist to the software project manager Problem: assign employees to tasks with a given dedication degree

Employee

• 

Task

Salary

Effort

Maximum dedication

Required skills

Skills

TPG

What is the performance of metaheuristics when the problem size increases?

ISDA 2011, Córdoba, Spain, November 22-24

2 / 28

Introduction

Software Project Scheduling

Experiments & Results

Algorithms

Conclusions & Future Work

Problem Formulation: duration • 

Project duration (computation)

T1

T2

T3

T4

T5

T6

E1

0.3

0.2

0.5

0.7

1.0

0.0

E2

0.0

0.0

0.2

0.1

0.5

0.8

E3

0.2

0.0

0.0

0.6

1.0

1.0

E4

0.4

0.6

0.0

0.0

0.0

1.0

∑ 0.8

Effort T2

= Duration T2

Task duration

TPG

Gantt diagram of the project T1 T2 T3 T4 T5 T6

Project duration

Time ISDA 2011, Córdoba, Spain, November 22-24

3 / 28

Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

Problem Formulation: cost • 

Project cost (computation)

E1

T1

T2

T3

T4

T5

T6

0.3

0.2

0.5

0.7

1.0

0.0

0.5

0.8

E2

0.0

0.0

0.2

Dur. 0.1 T4

E3

0.2

0.0

0.0

0.6

1.0

1.0

E4

0.4

0.6

0.0

0.0

0.0

1.0

×

Time employee E3 spends on task T4 ISDA 2011, Córdoba, Spain, November 22-24

4 / 28

Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

Problem Formulation: cost • 

Project cost (computation)

T1

T2

T3

E1

0.3

0.2

0.5

E2

Dur. T1 0.0 ×

Dur. T2 0.0 ×

Dur. T3 0.2 ×

Dur. Dur.T4 0.1 T4 ×

E3

0.2

0.0

0.0

E4

0.4

0.6

0.0

ISDA 2011, Córdoba, Spain, November 22-24

T4

T5

T6

∑ = time the employee

0.7 1.0 0.0 spends on the project Dur. T5 0.5 ×

Dur. T6 0.8 ×

0.6

1.0

1.0

0.0

0.0

1.0

×

Salary of E3

Cost of employee E3 due to its participacion

5 / 28

Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

Problem Formulation: cost • 

Project cost (computation)

E1

T1

T2

T3

T4

T5

T6

0.3

0.2

0.5

0.7

1.0

0.0

Cost of employee E1 due to its participation

E2

0.0

0.0

0.2

0.1

0.5

0.8

Cost of employee E2 due to its participation

E3

0.2

0.0

0.0

0.6

1.0

1.0

Cost of employee E3 due to its participacion

E4

0.4

0.6

0.0

0.0

0.0

1.0

Cost of employee E4 due to its participacion

∑= ISDA 2011, Córdoba, Spain, November 22-24

Project cost 6 / 28

Introduction

• Constraints

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

T1 T2 T3 T4 T5 T6

E1 0.3 0.2 0.5 0.7 1.0 0.0 Conference 2005 6th Metaheuristics International Conference PSP 6th Problem Formulation: constraints 6thMetaheuristics MetaheuristicsInternational International Conference 2005 E2 0.02005 0.0 0.2 0.1 0.5 0.8 Fitness Funct. E3 0.2 Problem 0.0 0.0 0.6 1.0 1.0 Project Problem Project Scheduling •  Constraints Scheduling Representation E4 0.4 0.6 0.0 0.0 0.0 1.0 onstraints Constraints Introduction

Experiments

Conclusions & E1 Future Work E1 E1 E2 E2 E2 E3 E3 E3 E4 E4 E4

T1 T2 T2 T3 T3 T4 T4 T5 T5 T60 T1 T1 T2 T3 T4 T5 0.9 T6 >T6 0.3 0.2 0.2 0.5 0.5 0.7 0.7 1.0 1.0 0.0 0.0 0.3 0.3 0.2 0.5 0.7 1.0 0.0 1. All tasks must be 0.0 0.0 0.2 0.2 0.1 0.1 0.5 0.5 0.8 0.8 0.0 0.0 0.0performed 0.0 0.2 0.1 0.5 0.8 by somebody 0.2 0.0 0.0 0.0 0.0 0.6 0.6 1.0 1.0 1.0 1.0 0.2 0.2 0.0 0.0 0.6 1.0 1.0 2. The 0.4 0.6 0.6 0.0 0.0 0.0 0.0 0.0 0.0 1.0union of the employees 0.4 1.0 0.6 0.0 0.0 0.0 1.0 0.4 skills must include the required

∑ 0.9 0.9>>> 0.9 00 0

Alltasks tasksmust mustbe be be 1.1.All R1. Allby tasks must be erformed somebody by somebody erformed somebody performed ISDA 2011, Córdoba, Spain, November 22-24

skills must include the required skills of the task they perform R2. The union of the work team skills must include Vienna, Austria, August 22-26, 2005 August 22-26,the 2005required skills of the task they perform

7 / 28

Introduction

Software Project Scheduling

Experiments & Results

Algorithms

Conclusions & Future Work

Problem Formulation: constraints • 

Constraints (cont.) E1

T1

T2

T3

T4

T5

T6

0.3

0.2

0.5

0.7

1.0

0.0

T1 T2 T3 T4 T5 T6 Maximum dedication

Dedication

Overwork

Project duration

Time

R3. No employee must exceed her/his maximum dedication Time

ISDA 2011, Córdoba, Spain, November 22-24

8 / 28

Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

Algorithms in the comparison

NSGA-II

•  Generational GA •  Ranking & Crowding

PAES

•  (1+1) Evolution Strategy + External Archive •  Adaptive Grid

DEPT

•  Differential Evolution •  Pareto Tournament

MO-FA

•  Firefly Algorithm •  Light intensity & Firefly attraction

ISDA 2011, Córdoba, Spain, November 22-24

9 / 28

procedure and a density estimator known as crowding distance ( Conclusions Software Project Experiments Introduction Algorithms see [19]). Finally, the population is updated with the best ind Scheduling & Results & Future Work are repeated until the termination condition is fulfilled.

Algorithms: NSGA-II Algorithm 1 Pseudocode of NSGA-II. 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:

proc Input:(nsga-II) //Algorithm parameters in ‘nsga-II’ P Initialize Population() // P = population // Q = auxiliary population Q while not Termination Condition() do for i to (nsga-II.popSize / 2) do parents Selection(P) offspring Recombination(nsga-II.Pc,parents) offspring Mutation(nsga-II.Pm,offspring) Evaluate Fitness(offspring) Insert(offspring,Q) end for R P Q Ranking And Crowding(nsga-II, R) P Select Best Individuals(nsga-II, R) end while end proc

ISDA 2011, Córdoba, Spain, November 22-24

10 / 28

Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

Algorithms: PAES Algorithm 4 Pseudocode of PAES. 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16:

proc Input:(paes) //Algorithm parameters in ‘paes’ archive currentSolution Create Solution(paes) // Creates an initial solution while not Termination Condition() do mutatedSolution Mutation(currentSolution) Evaluate Fitness(mutatedSolution) if IsDominated(currentSolution, mutatedSolution) then mutatedSolution currentSolution else if Solutions Are Nondominated(currentSolution, mutatedSolution) then Insert(archive, mutatedSolution) Select(paes, archive) currentSolution end if end if end while end proc

ISDA 2011, Córdoba, Spain, November 22-24

11 / 28

Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

Algorithms: DEPT Algorithm 1 Pseudocode of DEPT. 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:

proc Input:(dept) //Algorithm parameters in ‘dept’ P Initialize Population() while not Termination Condition() do for i 1 to dept.popSize do Randomly select three di↵erent indices i1 , i2 and i3 v = P [i1 ] + · (Best P [i]) + F · (P [i2 ] P [i3 ]) // Trial vector u=Recombine(v, P [i]) Evaluate(u) P [i] = Replacement(u, [i]) trial // Taking into accountTo Pareto dominance case, the target and Pthe individuals). do this we end for a multiobjective fitness value (MOF) for each endcalculate while endindividual proc by using the following equation:

(10) where is the processed individual and the population size. In Equation (10) we consider the number of solutions ISDA 2011, Córdoba, Spain, November that dominate the 22-24 individual and the number of solutions of12

a di th no bu co pr us / 28 H

Conclusions 1 Software Project Experiments anIntroduction be used as a typical initial value. That is γ = . Algorithms Scheduling & Results & Future Work Γ m

172

X.-S. Yang

Distance and Movement

Algorithms: MO-FA Firefly Algorithm

e distance between any two fireflies i and j at xi and xj , respectively, Objective function f (x), x = (x1 , ..., xd )T rtesian distance Generate initial population of fireflies xi (i = 1, 2, ..., n) Light intensity Ii at xi is determined by f (xi ) ! Define light absorption coefficient γ" d "$ while (t Ii ), Move firefly i towards Attractiveness varies with distance r via exp[−γr] Evaluate new solutions andspatial update lightcoordinate intensity ere xi,k is the kth component of the xi of ith firefly. I %for j end i i − xj )2 + (yi − yj )2 . = for(x e, we have rij end the fireflies and find the current best The movementRank of a firefly i is attracted to another more attractive (brig end while Postprocess fly j is determined byresults and visualization

1 (xj − xi ) + α (rand − ), 2

Fig. 1. Pseudo 2code of the firefly algorithm (FA)

xi = xi + β0 e

−γrij

adjustable visibility and more versatile in attractiveness variations, which usually leads toterm higher is mobility thus the search spacewhile is explored efficiently. second due and to the attraction themore third term

ere the ISDA 2011, Córdoba, Spain, November 22-24

is ran

13 / 28

Introduction

Software Project Scheduling

Algorithms

endowed with problem-specific Conclusions Experiments & Results & Future in Work find assignments which one

knowledge so it is usu or more employees ex their maximum dedication. In order to deal with such is we have used a repair operator that, whenever an overw in the assignment is detected, it is fixed by dividing dedication of all the employees to all the tasks by maximum overwork of the employees. That is, the e of the operator is:

Algorithms: repair mechanism • 

For constraint R3

Maximum dedication

Dedication

Overwork

Dedication

Time

where is used in order to prevent f inaccuracies in the floating-point operations. Repair mechanism This operator increases the project duration of the tative solution and keeps the cost unchanged. Tha and In addition, the new solution satisfies the third const (the one related to the overwork). From the point of vie the algorithmic complexity, thededication overhead introduced is Maximum same as the evaluation of the solution, since the coeffic used in the denominator is computed at the same that the solution is evaluated. If a solution violates other constraints of the problem, then it is penalize the selection and replacement operators (it is the last selected). Time

ISDA 2011, Córdoba, Spain, November 22-24

14 / 28

Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

Experiments: Quality Indicators •  Hypervolume (HV) –  Volume covered by members of the non-dominated set of solutions –  Measures both convergence and diversity in the Pareto front –  Larger values are better

•  Attainment surfaces –  Localization statistics for fronts –  The same as the median and the interquartile range in the mono-objective case

ISDA 2011, Córdoba, Spain, November 22-24

15 / 28

Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

Experiments: Quality Indicators •  Hypervolume (HV) –  Volume covered by members of the non-dominated set of solutions –  Measures both convergence and diversity in the Pareto front –  Larger values are better 1.0

•  Attainment surfaces –  Localization statistics for fronts –  The same as the median and the interquartile range in the mono-objective case

0.8

0.6

0.4

0.2

0.0 0.0

ISDA 2011, Córdoba, Spain, November 22-24

0.2

0.4

0.6

0.8

1.0

16 / 28

Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

Experiments: Quality Indicators •  Hypervolume (HV) –  Volume covered by members of the non-dominated set of solutions –  Measures both convergence and diversity in the Pareto front –  Larger values are better 1.0

•  Attainment surfaces –  Localization statistics for fronts –  The same as the median and the interquartile range in the mono-objective case

0.8

0.6

0.4

0.2

0.0 0.0

ISDA 2011, Córdoba, Spain, November 22-24

0.2

0.4

0.6

0.8

1.0

17 / 28

Introduction

Software Project Scheduling

Algorithms

Conclusions & Future Work

Experiments & Results

Experiments: Quality Indicators •  Hypervolume (HV) –  Volume covered by members of the non-dominated set of solutions –  Measures both convergence and diversity in the Pareto front –  Larger values are better 1.0

•  Attainment surfaces –  Localization statistics for fronts –  The same as the median and the interquartile range in the mono-objective case

0.8

0.6

0.4

0.2

0.0 0.0

ISDA 2011, Córdoba, Spain, November 22-24

0.2

0.4

0.6

0.8

1.0

18 / 28

Introduction

Software Project Scheduling

Algorithms

Conclusions & Future Work

Experiments & Results

Experiments: Quality Indicators •  Hypervolume (HV) –  Volume covered by members of the non-dominated set of solutions –  Measures both convergence and diversity in the Pareto front –  Larger values are better 1.0

•  Attainment surfaces –  Localization statistics for fronts –  The same as the median and the interquartile range in the mono-objective case

75%-EAS

0.8

50%-EAS

0.6

0.4

25%-EAS

0.2

0.0 0.0

ISDA 2011, Córdoba, Spain, November 22-24

0.2

0.4

0.6

0.8

1.0

19 / 28

Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

Experiments: Instances and Parameters Problem instances •  36 instances of increasing number of tasks (16-512) and employees (8-256) •  Labeled as i- Global Parameters •  •  •  •  • 

Stopping condition: 100 000 function evaluations Approximated Pareto front size: 100 solutions 100 independent runs for each algorithm-instance Statistical tests for significance differences Representation: vector of real numbers

ISDA 2011, Córdoba, Spain, November 22-24

20 / 28

Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

Experiments: Algorithm-Specific Parameters

NSGAII

PAES

Population: 100

DEPT Population: 32

Population: 32

Population: 1 SBX (ηc=20, pc=0.9) Polynomial mutation (ηm=20, pm=1/L)

MO-FA

RandToBest/1/ Binomial Polynomial mutation (ηm=20)

ISDA 2011, Córdoba, Spain, November 22-24

CR=0.9, F=0.5

Mutation factor: 0.5

21 / 28

Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

Results: Hypervolume Comparison

Hypervolume (HV) •  PAES is the clear winner in HV •  MO-FA is the second best for small instances •  NSGA-II is the second best for large instances •  DEPT is the worst algorithm in the comparison

ISDA 2011, Córdoba, Spain, November 22-24

22 / 28

Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

Results: 50%-Empirical Attainment Surfaces (EAS) i32-8 3500

RPF NSGA-II PAES DEPT MO-FA

3000

MO-FA

Duration

2500

2000

1500

1000

NSGA-II

PAES

DEPT

500

0 2.7e+06

2.75e+06

2.8e+06

ISDA 2011, Córdoba, Spain, November 22-24

2.85e+06 Cost

2.9e+06

2.95e+06

3e+06

23 / 28

Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

Results: 50%-Empirical Attainment Surfaces (EAS) i32-16 1400

RPF NSGA-II PAES DEPT MO-FA

1200

Duration

1000

800

600

MO-FA

PAES

400

DEPT

200

NSGA-II 0 2.2e+06

2.3e+06

2.4e+06

2.5e+06

ISDA 2011, Córdoba, Spain, November 22-24

2.6e+06 2.7e+06 Cost

2.8e+06

2.9e+06

3e+06

3.1e+06

24 / 28

Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

Results: 50%-Empirical Attainment Surfaces (EAS) i32-32 800

RPF NSGA-II PAES DEPT MO-FA

700

600

Duration

500

MO-FA

400

PAES 300

DEPT

200

NSGA-II 100

0 2.6e+06

2.7e+06

2.8e+06

2.9e+06

3e+06

3.1e+06

3.2e+06

3.3e+06

3.4e+06

Cost

ISDA 2011, Córdoba, Spain, November 22-24

25 / 28

Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

Results: 50%-Empirical Attainment Surfaces (EAS) i32-64 900

RPF NSGA-II PAES DEPT MO-FA

800

700

Duration

600

500

400

MO-FA

PAES 300

DEPT

200

NSGA-II

100

0 2.5e+06

2.6e+06

2.7e+06

2.8e+06

ISDA 2011, Córdoba, Spain, November 22-24

2.9e+06 3e+06 Cost

3.1e+06

3.2e+06

3.3e+06

3.4e+06

26 / 28

Introduction

Software Project Scheduling

Algorithms

Experiments & Results

Conclusions & Future Work

Conclusions & Future Work Conclusions •  •  •  •  • 

PAES is the algorithm with better scalability behaviour MO-FA is the second best in small instances NSGA-II is the second best in large instances DEPT is the worst algorithm in the comparison HV not always provides enough information to determine the best algorithm. EAS is a good alternative.

Future Work •  Use real-world instances of the problem •  Change the formulation of the problem to get closer to reality

ISDA 2011, Córdoba, Spain, November 22-24

27 / 28

On the Scalability of Multi-objective Metaheuristics for the Software Scheduling Problem

Thanks for your attention !!!

ISDA 2011, Córdoba, Spain, November 22-24

28 / 28

Suggest Documents