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 ...
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Ant Colony Optimisation<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 , Speed j}.<br />
Output: Optimised Scheduling Plan<br />
//Optimising the overall makespan <strong>and</strong> cost<br />
//Initialisation <strong>of</strong> pheromone <strong>and</strong> other parameters for ACO algorithm<br />
// Package based r<strong>and</strong>om generation<br />
1) INITIALISATION(ACO);<br />
2) While (stopping condition is not met)<br />
{<br />
// initialise each ant<br />
for each ant<br />
{<br />
// select heuristics from duration-greedy, cost-greedy <strong>and</strong> overall-greedy<br />
3) SELECTION (Heuristics);<br />
// build tackling sequence TS based on the input DAG task graphs<br />
4) BUILDING( TS,<br />
DAGs);<br />
}<br />
// construct solutions<br />
5) While (not end <strong>of</strong> TS)<br />
{<br />
// choose the resource for the next activity based on its earliest start time ,<br />
earliest end time, <strong>and</strong> the bias <strong>of</strong> B ij (mapping resource R j to activity a i )<br />
6) CHOOSE ( ai,<br />
ai.<br />
est,<br />
ai.<br />
eet , R{<br />
R<br />
j},<br />
Bij<br />
);<br />
// update the est <strong>and</strong> eet for all the subsequent activities;<br />
7) UPDATE( est,<br />
eet);<br />
// update local pheromone for both duration <strong>and</strong> cost<br />
8) LOCALUPDATE( dτ<br />
ij<br />
, dτ<br />
ij<br />
);<br />
}<br />
// update the global pheromone based on the makespan <strong>and</strong> cost <strong>of</strong> the best-s<strong>of</strong>ar<br />
solution<br />
bs bs<br />
9) GLOBALUPDATE<br />
( dτ<br />
ij<br />
, dτ<br />
ij<br />
, makespan , cos t );<br />
// return the best-so-far solution <strong>and</strong> record into the SolutionSet<br />
10) RETURN( Solution,<br />
SolutionSet);<br />
}<br />
// Selecting the BestSolution according to user preferences<br />
11) BestSoluti on = COMPARE( SolutionSet , UserPref );<br />
// deploy the scheduling plan<br />
12) Deploy(L).<br />
Figure 8.4 ACO based Rescheduling Algorithm<br />
8.3.4 Other Representative Metaheuristic Algorithms<br />
Besides GA <strong>and</strong> ACO introduced above, other representative metaheuristic<br />
algorithms <strong>of</strong>ten used in workflow scheduling/rescheduling include PSO (Particle<br />
Swarm Optimisation) [102], GRASP (Greedy R<strong>and</strong>omised Adaptive Search<br />
Procedure) [100] <strong>and</strong> SA (Simulated Annealing) [5]. In this thesis, we do not intend<br />
to investigate all <strong>of</strong> the metaheuristics algorithms. Readers interested in an overview<br />
<strong>of</strong> representative metaheuristics based algorithms may refer to [6]. Meanwhile, we<br />
136