oğuzhan taŞ 2005
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 PresentationTRANSCRIPT
1
Comparative Study of two Genetic Algorithms Based Task Allocation Models in Distributed Computing
System
Oğuzhan TAŞ2005
2
Authors
Deo Prakash Vidyarthi (India) Anil Kumar Tripathi (India) Biplab Kumer Sarker (Japan) Kirtil Rani (India) IEEE 2003
3
Outline
Objective and Previous Works What are Genetic Algorithms? Genetic Algorithms for Task
Allocation Implementation Examples and Comparisons Conclusion
4
Outline
Objective and Previous Works What are Genetic Algorithms? Genetic Algorithms for Task
Allocation Implementation Examples and Comparisons Conclusion
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.
6
Outline
Objective and Previous Works What are Genetic Algorithms? Genetic Algorithms for Task
Allocation Implementation Examples and Comparisons Conclusion
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.
8
Evolutionary Algorithms
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
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 ...
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
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
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.
14
Chromosome Selection
Roulette Wheel Selection Boltzman Selection Tournament Selection Rank Selection Steady State Selection …..
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
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.
17
Selection-Roulette Wheel
18
Outline
Objective and Previous Works What are Genetic Algorithms? Genetic Algorithms for Task
Allocation Implementation Examples and Comparisons Conclusion
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
20
Outline
Objective and Previous Works What are Genetic Algorithms? Genetic Algorithms for Task
Allocation Implementation Examples and Comparisons Conclusion
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.
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.
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.
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
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.
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.}
27
Outline
Objective and Previous Works What are Genetic Algorithms? Genetic Algorithms for Task
Allocation Implementation Examples and Comparisons Conclusion
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.
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.
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.
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
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
33
Implementation - Case 2
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.
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
36
Execution Time Matrix of T2
p1 p2
m1 1 1
M2 3 5
M3 ∞ 4
M4 2 6
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
38
Outline
Objective and Previous Works What are Genetic Algorithms? Genetic Algorithms for Task
Allocation Implementation Examples and Comparisons Conclusion
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
40
Outline
Objective and Previous Works What are Genetic Algorithms? Genetic Algorithms for Task
Allocation Implementation Examples and Comparisons Conclusion
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.
42
Questions Thank you. Questions?