oğuzhan taŞ 2005

42
1 Comparative Study of two Genetic Algorithms Based Task Allocation Models in Distributed Computing System Oğuzhan TAŞ 2005

Upload: beau-wells

Post on 01-Jan-2016

35 views

Category:

Documents


0 download

DESCRIPTION

Comparative Study of two Genetic Algorithms Based Task Allocation Models in Distributed Computing System. Oğuzhan TAŞ 2005. Authors. Deo Prakash Vidyarthi (India) Anil Kumar Tripathi (India) Biplab Kumer Sarker (Japan) Kirtil Rani (India) IEEE 2003. Outline. Objective and Previous Works - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Oğuzhan TAŞ 2005

1

Comparative Study of two Genetic Algorithms Based Task Allocation Models in Distributed Computing

System

Oğuzhan TAŞ2005

Page 2: Oğuzhan TAŞ 2005

2

Authors

Deo Prakash Vidyarthi (India) Anil Kumar Tripathi (India) Biplab Kumer Sarker (Japan) Kirtil Rani (India) IEEE 2003

Page 3: Oğuzhan TAŞ 2005

3

Outline

Objective and Previous Works What are Genetic Algorithms? Genetic Algorithms for Task

Allocation Implementation Examples and Comparisons Conclusion

Page 4: Oğuzhan TAŞ 2005

4

Outline

Objective and Previous Works What are Genetic Algorithms? Genetic Algorithms for Task

Allocation Implementation Examples and Comparisons Conclusion

Page 5: Oğuzhan TAŞ 2005

5

Objective and Previous Works Earlier, they have proposed a task

allocation model to maximize the reliability of Distributed Computing System (DCS) using Genetic Algorithm.

In this paper, they propose a task allocation model to minimize the Turnaround Time of the task submitted to Distributed Computing System for execution.

Also, they use Simple Genetic Algorithms in this new task allocation model.

Page 6: Oğuzhan TAŞ 2005

6

Outline

Objective and Previous Works What are Genetic Algorithms? Genetic Algorithms for Task

Allocation Implementation Examples and Comparisons Conclusion

Page 7: Oğuzhan TAŞ 2005

7

What are Genetic Algorithms?

Genetic algorithms (GAs) provide a learning method motivated by an analogy to biological evolution.

In the other words, a way to employ evolution in the computer

Search and optimization technique based on variation and selection

Genetic algorithms are a part of evolutionary computing, which is a rapidly growing area of artificial intelligence.

Page 8: Oğuzhan TAŞ 2005

8

Evolutionary Algorithms

Page 9: Oğuzhan TAŞ 2005

9

GA Vocabulary Gene – An single encoding of part of the solution

space. A collection of genes is sometimes called a genotype A collection of aspects (like eye colour) is sometimes

called a phenotype Chromosome – A string of “Genes” that represents a

solution. Population - The number of “Chromosomes”

available to test. GA Operations

Reproduction Crossover Mutation

Page 10: Oğuzhan TAŞ 2005

10

Genetic Algorithms (GA) The chromosomes in GA population

generally take the form of bit strings. Bit strings (0101 ... 1100) Real numbers (43.2 -33.1 ... 0.0 89.2) Permutations of element (E11 E3 E7 ... E1 E15) Lists of rules (R1 R2 R3 ... R22 R23) Program elements (genetic programming) ... any data structure ...

Page 11: Oğuzhan TAŞ 2005

11

GA Operations - Crossover choose randomly some crossover point copy everything before this point from

the first parent then copy everything after the

crossover point from the other parent. Crossover probability is fixed.11001011 + 11011101 = 11011111

Page 12: Oğuzhan TAŞ 2005

12

GA Operations - Mutation Mutation means that the elements of

DNA are a bit changed. Mutation probability is fixed. Bit inversion - selected bits are

inverted

11001001 =>  10001001

Page 13: Oğuzhan TAŞ 2005

13

Fitness Function The GA requires a fitness function

that assigns a score to each chromosome in the population.

The fitness function in a GA is the objective function that is to be optimized.

It is used to evaluate search nodes, thus it controls the GA.

Page 14: Oğuzhan TAŞ 2005

14

Chromosome Selection

Roulette Wheel Selection Boltzman Selection Tournament Selection Rank Selection Steady State Selection …..

Page 15: Oğuzhan TAŞ 2005

15

Selection-Roulette Wheel Want to maintain an element of

randomness but ‘fix’ the selection so that fitter individuals have better odds of being chosen

Assign areas on a number line relative to each individuals fitness

Generate a random number within the range of the number line

Determine which individual occupies that area of the number line

Choose that individual

Page 16: Oğuzhan TAŞ 2005

16

Selection-Roulette Wheel

This process can be described by the following algorithm. [Sum] Calculate the sum of all chromosome fitnesses in

population - sum S. [Select] Generate random number from the interval (0,S) - r. [Loop] Go through the population and sum the fitnesses from

0 - sum s. When the sum s is greater then r, stop and return the chromosome where you are.

Of course, the step 1 is performed only once for each population.

Page 17: Oğuzhan TAŞ 2005

17

Selection-Roulette Wheel

Page 18: Oğuzhan TAŞ 2005

18

Outline

Objective and Previous Works What are Genetic Algorithms? Genetic Algorithms for Task

Allocation Implementation Examples and Comparisons Conclusion

Page 19: Oğuzhan TAŞ 2005

19

Basic Genetic Algorithm1. [Start] Generate random population 2. [Fitness] Evaluate the fitness f(x) of each chromosome 3. [New population] Create a new population by repeating

following steps until the new population is complete 1. [Selection] Select two parent chromosomes from a

population according to their fitness (the better fitness, the bigger chance to be selected)

2. [Crossover] With a crossover probability cross over the parents to form new offspring (children). If no crossover was performed, offspring is the exact copy of parents.

3. [Mutation] With a mutation probability mutate new offspring at each locus (position in chromosome).

4. [Accepting] Place new offspring in the new population 4. [Replace] Use new generated population for a further run of

the algorithm 5. [Test] If the end condition is satisfied, stop, and return the

best solution in current population 6. [Loop] Go to step 2

Page 20: Oğuzhan TAŞ 2005

20

Outline

Objective and Previous Works What are Genetic Algorithms? Genetic Algorithms for Task

Allocation Implementation Examples and Comparisons Conclusion

Page 21: Oğuzhan TAŞ 2005

21

Genetic Algorithms for Task Allocation *Calculation of Turnaround Time*

The fitness function = turnaround time of the task submitted to the DCS for execution.

The modules of the task allocated on the different nodes will be executed in parallel.

Thus the node taking maximum time will furnish the turnaround time as all other nodes, taking less time, will complete the execution within the execution time of the task that takes maximum time.

This time include the actual execution+communicate with other modules allocated on other computing nodes.

The modules allocated on the same node will incur zero communication.

Page 22: Oğuzhan TAŞ 2005

22

Genetic Algorithms for Task Allocation

Different module of the task may take varying on the different computing nodes of DCS.

The objective of this model will be to minimize this time computed by the abovesaid method.

Page 23: Oğuzhan TAŞ 2005

23

Turnaround Time=Fitness Function

n = number of processor in the distributed system.

m=number of modules in the distributed system.

X=an m x n matrix corresponding to a module assignment

eij = execution time of module mi on node Pk

Cij = communication between mi and mj

xik= an element of X;

xik=1 if module mi is assigned to Pk, otherwise xik=0.

Page 24: Oğuzhan TAŞ 2005

24

Reliability Expression

lpq = a link node Pp and Pq - Rk(T,X)= Reliability of the processing node Pk

Wpq = transmission rate of link lpq -Rpq(T,X) = Reliability of the link lpq

= failure rate of link lpq

= failure rate of processing node Pk

Page 25: Oğuzhan TAŞ 2005

25

Algorithm

Initial Schedule{- Compute height for each module in the task graph- Keep modules of the same height (h) in the same group G(h)- Assign the modules of the same height from the same group

G(h) onto different processors. If some modules are unassigned again assign it from the first processors in the same order. The assignment is to satisfy the system constraints.

- Assign the modules of the G(h+1) in the same order of the processor as in 3.

}many populations are generated by applying the Initial_Schedule and changing the order of the processors.

Page 26: Oğuzhan TAŞ 2005

26

AlgorithmCrossover { Two modules of different height are chosen for crossover site

in a generated population and the portion of the string is swapped.

}Mutation { Randomly alter 0 to 1 and 1 to 0 by keeping number of 0 and 1 same

}Reproduction{Use the fitness function. Choose few best strings

whichhas good fitness value.}

Page 27: Oğuzhan TAŞ 2005

27

Outline

Objective and Previous Works What are Genetic Algorithms? Genetic Algorithms for Task

Allocation Implementation Examples and Comparisons Conclusion

Page 28: Oğuzhan TAŞ 2005

28

Implementation - Case 1

Task Graph (TG) consists of 4 modules m1,m2,m3 and

m4. also processor Graph (PG) consists of four modules p1,

p2, p3 and p4.

Page 29: Oğuzhan TAŞ 2005

29

Implementation - Case 1

p1–m2 , p2–nil, p3–m4, p4–m1,m3

Turnaround time=14 unit Number of iterations=2 Reliability of allocation =0.99627 Allocation with load balancing of

maximum modules 2: same as above.

Page 30: Oğuzhan TAŞ 2005

30

Implementation - Case 1

Allocation to Maximize Reliability: p1-nil, p2-m1,m2,m4 , p3-m3, p4-nil Reliability for allocation=0.997503 Number of iterations=2 Turnaround time=20 unit.

Page 31: Oğuzhan TAŞ 2005

31

Execution Time Matrix of T1

p1 p2 p3 p4

m1 5 3 ∞ 4

m2 3 4 5 6

m3 4 ∞ 2 5

m4 3 4 5 2

Page 32: Oğuzhan TAŞ 2005

32

IMC Matrix of T1

m1 m2 m3 m4

m1 0 2 3 1

m2 2 0 2 0

m3 3 2 0 3

m4 2 0 3 0

Page 33: Oğuzhan TAŞ 2005

33

Implementation - Case 2

Page 34: Oğuzhan TAŞ 2005

34

Implementation - Case 2

p1-m1, m3, p2-m2, m4, p3-nil, p4-nil

Turnaraound time= 13 unit

Number of iterations=2

Reliability of allocation=0.987124

Allocation with load balancing of maximum modules 2:

same as above.

Page 35: Oğuzhan TAŞ 2005

35

Implementation - Case 2

Allocation to Maximize Reliabilityp1-nil, p2-m1,m2,m3,m4, p3-nil, p4-nil

Reliability of the allocation= 0.997953

Number of iterations=3Turnaround time=18 unit

Page 36: Oğuzhan TAŞ 2005

36

Execution Time Matrix of T2

p1 p2

m1 1 1

M2 3 5

M3 ∞ 4

M4 2 6

Page 37: Oğuzhan TAŞ 2005

37

IMC Matrix of T2

m1 m2 m3 m4

m1 0 8 13 11

m2 8 0 6 7

m3 13 6 0 12

m4 11 7 12 0

Page 38: Oğuzhan TAŞ 2005

38

Outline

Objective and Previous Works What are Genetic Algorithms? Genetic Algorithms for Task

Allocation Implementation Examples and Comparisons Conclusion

Page 39: Oğuzhan TAŞ 2005

39

Comparisons

In this case, the minimum turnaround is found to be 14 unit and the reliability corresponding to this allocation slightly less than maximum possible reliability obtained their previous work for this example. The turnaround corresponding to max reliability 20 units which is more than minimum turnaround i.e. 14 unit

Page 40: Oğuzhan TAŞ 2005

40

Outline

Objective and Previous Works What are Genetic Algorithms? Genetic Algorithms for Task

Allocation Implementation Examples and Comparisons Conclusion

Page 41: Oğuzhan TAŞ 2005

41

Conclusion

In conclusion, when we consider all the cases they found that when turnaround time is to be minimized the reliability of the DCS will sufer little.

Load balancing factor produces better turnaround time of the task but further result in reliability reduction.

Page 42: Oğuzhan TAŞ 2005

42

Questions Thank you. Questions?