21.01.2014 Views

Xiao Liu PhD Thesis.pdf - Faculty of Information and Communication ...

Xiao Liu PhD Thesis.pdf - Faculty of Information and Communication ...

Xiao Liu PhD Thesis.pdf - Faculty of Information and Communication ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Genetic Algorithm<br />

Input: Integrated Task-to-VM list L{ ( Ti , VM j ) | i = 1,2,.., n;<br />

j = ; 1,2,.., m};<br />

Tasks { T i , Cost i , Time i , DAG{<br />

T i > T i+ ; 1}};<br />

Virtual Machines { VM j,<br />

Price j,<br />

Speed.<br />

j}.<br />

Output: Optimised Scheduling Plan<br />

//two dimensional encoding<br />

1) Encoding(L);<br />

// package based r<strong>and</strong>om generation <strong>of</strong> initial populaton<br />

2) Create initial Population <strong>of</strong> fixed size;<br />

// Optimising the overall makespan <strong>and</strong> cost<br />

3) While (stopping condition is not met)<br />

{<br />

//selecting Parents from Population<br />

4) Selection(Population);<br />

5) Crossover( Parents)<br />

→ Children;<br />

//change resource peer <strong>of</strong> a r<strong>and</strong>om cell<br />

6) Mutation(Children);<br />

//validate with DAG, retain or discard<br />

7) Validation(Children);<br />

//replace children <strong>of</strong> the worst fitness with the best one<br />

8) Replace( WorstChild,<br />

BestChild);<br />

//check with the QoS constraints, retain or discard<br />

9) Check(Children);<br />

}<br />

// Selecting the BestSolution according to user preferences<br />

10) BestSoluti on = Compare( SolutionSet,<br />

UserPref );<br />

// decoding <strong>and</strong> deploy<br />

11) Decoding( BestSolution);<br />

12) Deploy(L).<br />

Figure 8.3 GA based Rescheduling Algorithm<br />

8.3.3 Metaheuristic Algorithm 2: Ant Colony Optimisation<br />

In recent years, ACO, a type <strong>of</strong> optimisation algorithm inspired by the foraging<br />

behaviour <strong>of</strong> real ants in the wild, has been adopted to address large complex<br />

scheduling problems <strong>and</strong> proved to be quite effective in many distributed <strong>and</strong><br />

dynamic resource environments, such as parallel processor systems <strong>and</strong> grid<br />

workflow systems [12, 25].<br />

The detailed introduction for each operation <strong>of</strong> ACO can be found in our work in<br />

[94] <strong>and</strong> [62], <strong>and</strong> hence omitted here. As shown in Figure 8.4, the first searching<br />

stage is to optimise the overall execution time <strong>and</strong> cost for the integrated Task-<br />

Resource list through ACO (Line 1 to Line 10). The ACO algorithm starts from<br />

initialisation <strong>of</strong> pheromone <strong>and</strong> all parameters (Line 1). In [26], two types <strong>of</strong><br />

pheromone, viz. dτ ij <strong>and</strong> cτ ij , are defined. Here, dτ ij denotes the desirability <strong>of</strong><br />

134

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!