Post on 21-May-2020
transcript
134
CHAPTER 6
PROPOSED PARALLEL IMPROVED PARTICLE SWARM
OPTIMIZATION FOR MULTIPROCESSOR SCHEDULING
The present chapter proposes, two parallel approaches, Parallel
Synchronous and Parallel Asynchronous of Improved Particle Swarm
Optimization (IPSO) for multiprocessor task scheduling, with two cases
namely static independent tasks scheduling and dynamic task scheduling with
and without load balancing, to speed up the convergence and to reduce the
total execution cost of the entire schedule.
6.1 INTRODUCTION
In the growing scenario, the development of parallel optimization
algorithms are motivated by the high computational cost of complex
engineering optimization problems, in which many calculations are carried
out simultaneously. Parallel optimization works on the principle that large
problems can often be divided into smaller ones, which are then solved
simultaneously. To obtain an improved computational throughout and global
search capability, the parallelization of an increasingly popular global search
method is exploited, namely, the Parallel Particle Swarm Optimization
(PPSO) algorithm.
In view of improving the efficiency and performance in dynamic
environment, more effort is still required. Hence, the present chapter aims at
developing a new Parallel approach of Improved Particle Swarm
135
Optimization to solve the multiprocessor scheduling problem. Parallel
synchronous Improved Particle Swarm Optimization (PSIPSO) and Parallel
Asynchronous Improved Particle Swarm Optimization (PAIPSO)
methodologies are tested for the multiprocessor scheduling problem. The
performances of the parallel Improved PSO (PSIPSO and PAIPSO)
approaches are better than that of the Parallel Synchronous Particle Swarm
Optimization (PSPSO) and Parallel Asynchronous Particle Swarm
Optimization (PAPSO) when applied to the multiprocessor task scheduling
problem.
6.2 REVIEW OF LITERATURE
Nicol and O’Hallaron (1991) extended the work on the problem of
mapping pipelined or parallel computations onto linear array, shared memory
and host-satellite systems. Results show that these problems can be solved
more efficiently when computation module execution times and inter module
communication times are bounded, and the processors satisfy certain
homogeneity constraints. Run-time complexity is reduced further with
parallel mapping algorithms based on these improvements, which run on the
architecture for which they create mappings.
Lee and Lee (1996) proposed new Parallel Simulated Annealing
algorithms which allow multiple Markov chains to be traced simultaneously
by Processing Elements which may communicate with each other. Both
synchronous and asynchronous algorithms implementation have been
considered. Their performance have been analysed in detail and also verified
by extensive experimental results. The proposed parallel simulated annealing
schemes for graph partitioning can find a solution of equivalent or even better
quality up to an order of magnitude faster than the conventional parallel
schemes. Among the proposed schemes, the one where Processing Elements
exchange information dynamically (not with a fixed period) performs best.
136
Ahmad and Kwok (1999) dealt with the problem of parallelizing
the multiprocessor scheduling problem. A parallel algorithm is introduced
that is guided by a systematic partitioning of the task graph to perform
scheduling using multiple processors. The algorithm schedules both the tasks
and messages, and is suitable for graphs with arbitrary computation and
communication costs, and is applicable to systems with arbitrary network
topologies using homogeneous and heterogeneous processors. The algorithm
is implemented on the Intel Paragon processor and is compared with three
closely related algorithms. The experimental results indicated that the
proposed algorithm yields higher quality solutions while using an order of
magnitude smaller scheduling times. The algorithm also exhibited an
interesting trade-off between the solution quality and speedup while scaling
well with the problem size.
Alba and Troya (2001) analyzed the importance of the synchronism
in the migration step of various parallel distributed Genetic Algorithms.
Results have proved that parallel Genetic Algorithms almost always
outperform sequential Genetic Algorithms, and also asynchronous algorithms
always outperform their equivalent synchronous counterparts in real-time.
Van Soest and Casius (2003) enumerated the merits of a Parallel
Genetic Algorithm in solving hard optimization problems. A Parallel Genetic
Algorithm for optimization is outlined, and its performance on both
mathematical and biomechanical optimization problems is compared to a
sequential quadratic programming algorithm, a downhill simplex algorithm
and a Simulated Annealing Algorithm. The authors claim that the key
advantage of the genetic is that it can easily be parallelized at negligible
overhead.
Higginson et al (2004) analyzed the importance of simulated
parallel annealing within a neighbourhood for optimization of bio-mechanical
137
systems. A portable parallel version of a simulated annealing algorithm is
designed for solving optimization problems in biomechanics. The algorithm
for Simulated Parallel Annealing (SPA) within a neighborhood is designed to
minimize inter-processor communication time and closely retain the heuristics
of the serial Simulated Annealing algorithm. The computational speed of the
SPAN algorithm scaled linearly with the number of processors on different
computer platforms for a simple quadratic test problem and for a more
complex forward dynamic simulation of human pedalling.
Schutte et al (2004) discussed the parallelization of an increasingly
popular global search method, the Particle Swarm Optimization (PSO)
algorithm in detail to obtain enhanced throughput and global search capacity.
The parallel PSO algorithm’s robustness and efficiency are demonstrated
using a biomechanical system identification problem containing several local
minima and numerical or experimental noise. The problem involves finding
the kinematic structure of an ankle joint model that best matches experimental
movement data. For synthetic movement data generated from realistic ankle
parameters, the algorithm correctly recovered the known parameters and
produced identical results to a synchronous serial implementation of the
algorithm. When numerical noise is added to the synthetic data, the algorithm
found parameters that reduced the fitness value below that of the original
parameters. When applied to experimental movement data, the algorithm
found parameters consistent with previous investigations and demonstrated an
almost linear increase in throughput for up to 30 nodes in a computational
cluster. Parallel PSO provides a new option for global optimization of large-
scale engineering problems.
Ho et al (2004) proposed two Intelligent Evolutionary Algorithms
(IEA) and Intelligent Multiobjective Evolutionary Algorithms (IMOEA)
using a novel Intelligent Gene Collector (IGC) to solve single and
multiobjective large parameter optimization problems. IGC is the main phase
138
in an intelligent recombination operator of IEA and IMOEA. Based on
orthogonal experimental design, IGC uses a divide-and-conquer approach.
IMOEA utilises a novel generalized Pareto-based scale-independent fitness
function for efficiency finding a set of Pareto-optimal solutions to a
multiobjective optimization problem. The IEA and IMOEA algorithms have
high performance in solving benchmark functions comprising of several
parameters, as compared with the existing Evolutionary Algorithms.
Chang et al (2005) presented a Parallel version of the Particle
Swarm Optimization (PPSO) algorithm together with three communication
strategies which can be used according to the independence of the data. The
first strategy is designed for solution parameters that are independent or are
only loosely correlated, such as the Griewank function. In cases where the
properties of the parameters are unknown, a third hybrid communication
strategy can be used. Experimental results demonstrated the usefulness of the
proposed PPSO algorithm.
Kwok and Ahmad (2005) proposed optimal algorithms for static
scheduling of task graphs with arbitrary parameters to multiple homogeneous
processors. The first algorithm is based on the A*search technique and uses a
computationally efficient cost function for guiding the search with reduced
complexity. Additionally, a number of effective state-pruning techniques are
proposed to reduce the search space. For further lowering the complexity, an
efficient parallelization of the search algorithm is proposed. Parallelization of
the algorithm is carried out with reduced inter processor communication as
well as with static and dynamic load balancing schemes to evenly distribute
the search states to the processors. An approximate algorithm is also proposed
that guarantees a bounded deviation from the optimal solution but executes in
a considerably shorter time. Based on an extensive experimental evaluation of
the algorithms, it is concluded that the parallel algorithm with pruning
139
techniques is an efficient scheme for generating optimal solutions of
reasonably large problems.
Venter and Sobieszcanski Sobieski (2005) tested both the
synchronous and asynchronous parallel PSO algorithms for the optimization
of typical transport aircraft wing parameters. The result infers that the
asynchronous PSO algorithm performs better than the synchronous PSO in
terms of parallel efficiency.
Koh et al (2006) implemented an asynchronous parallel PSO
algorithm for analytical and biomechanical test problems. The asynchronous
PSO is 3.5 times faster than the synchronous PSO algorithm.
Waintraub et al (2009) developed several different PPSO
algorithms exploring the advantages of enhanced neighborhood topologies
implemented by communication strategies in multiprocessor architectures.
The proposed PPSOs have been applied to two complex and time consuming
nuclear engineering problems, namely, reactor Core Design (CD) and Fuel
Reload (FR) optimization. After exhaustive experiments, it has been
concluded that, PPSO still improves solutions after many thousands of
iterations, making prohibitive the efficient use of serial (non-parallel) PSO in
such a kind of real world problems and PPSO with more elaborated
communication strategies is demonstrated to be more efficient and robust than
the master-slave model. Advantages and peculiarities of each model are
carefully discussed in the present research.
Subbaraj et al (2010) presented an advanced Parallelized Particle
Swarm Optimization algorithm with modified stochastic acceleration factors
(PSO-MSAF) to solve large scale Economic Dispatch (ED) problems. The
proposed algorithm prevents premature convergence and achieves better
speed up, especially for large scale ED problems, mitigating the burden of
140
multimodality and heavy computation. To improve the performance of the
proposed algorithm, penalty parameter-less constraint handling scheme is
employed to handle power balance, prohibited operating zones and ramp-rate
limits. The proposed architecture effectively controls the local search ability,
thereby leading to better convergence towards the true optimal solution.
Mussi et al (2011) proposed possible approaches to parallelizing
PSO on graphics hardware within the Compute Unified Device Architecture
(CUDA™), a GPU programming environment by nVIDIA™ which supports
the company’s latest cards. In the proposed method, the author explored and
evaluated two different ways of exploiting GPU parallelism and compared the
execution speed of the two parallel algorithms, on functions which are
typically used as benchmarks for PSO, with a standard sequential
implementation of PSO (SPSO), as well as with the recently published results
of other parallel implementations.
The review of literature presents the details of parallel approaches
and hybrid parallel approaches to various problems. It also reveals that the
parallel approaches provide better results.
6.3 PARALLEL PARTICLE SWARM OPTIMIZATION
There are different types of parallelism namely Bit-level,
Instruction level, Data parallelism and Task parallelism. The present research
work uses Data Parallelism. Parallel computing has the advantages of less
time consumption, and faster rate of solving complex problems.
The Parallel Particle Swarm Optimizers (PPSO) are classified into
three categories namely Global PSO, Migration PSO and Diffusion PSO (Belal
141
Master
Receive individual
Send globalvalue
Slaves
and EI-Ghazawi 2004). The next three sub-sections describe the mechanism of
each model.
6.3.1 Global PSO model (Master/ Slave)
In the global PSO model, finding the global optimal is done in a
master processor, while evaluation of the objective function and the
modifying particles velocities are executed in the slaves. In this model, the
communication overhead is linearly proportional to the folk size and the
computational gain obtained in master/slave model is reduced due to the large
communication overhead, as shown in Figure 6.1. The main feature is that
finding the global optimal is done on the total folk, hence the global
information about the optimal is available for each node.
Figure 6.1 Global PSO model (Master/Slave)
6.3.2 Migration PSO Model (Island)
In the migration PSO model, the folk is divided into sub-folks, each
of which is placed on one Processing Element (PE), each PE runs a PSO
algorithm on its sub-folks. Choosing the optimal value and modifying
individuals’ velocities is local to only its sub-folk. Similarly, after a finite
142
Send best
Receivebest value
Sub-folk onsingle PE
number of iterations or migration intervals, the best solution of each PE is
migrated to the neighbouring processors, as shown in Figure 6.2. In migration
PSO model, two modules are involved namely, a first module for sending and
receiving messages from other neighbours, and the second for updating the
individuals velocities based on the local optimal found on each node. The first
module can run at separate time interval or by interrupts.
Figure 6.2 Migration PSO model
6.3.3 Diffusion PSO Model
Diffusion PSO depends on the locality concept. Each individual is a
separate breeding unit and all the evaluations of the objective function is
performed locally. The distributed algorithm is different in its functionality
from the sequential one. In a distributed algorithm, the locality of information
is assumed for each agent. Each agent does not know much about what the
currently global best value is at each iteration, and moves towards its best
value in its neighbourhood. At first, each node considers its value is the best
value so far. Also, in each step, every node will get the neighbour’s best value
so far. If any of their values are less than its best value so far, this value will
143
The starting node
The first neighbour
The second neighbour
The third neighbour
Send MY best value
Receive neighbour best value
then replace its current value and will be sent to its neighbours as shown in
Figure 6.3.
Figure 6.3 Diffusion Model
Determining the best value in each node neighbourhood means that
each node broadcasts its current value to all its neighbours and it then
modifies its best value so far to be the best of all its own value and its
neighbours’ value. This would help in searching all areas and not escaping
from local minima and maxima. The effectiveness of this model depends on
the connectivity of the model, ranging from ring topology. This model
exploits the use of distributed learning, since each agent inspects for the
solution and cooperates with its neighbours to exchange information.
6.4 PROPOSED PARALLEL APPROACH
Advancement and the recent trends in the computer and network
technologies have direct towards the developments of parallel optimization
algorithms. PSIPSO method is proposed for the task scheduling problem,
which requires a synchronization point at the end of each optimizer iteration
before continuing to the next iteration. The PSO algorithm is well suited for a
144
coarse grained parallel implementation on a parallel or distributed computing
network.
The present research uses Master-Slave model. The parallelism is
carried out using master-slave approach.
6.5 PROPOSED PARALLEL SYNCHRONOUS IMPROVED
PARTICLE SWARM OPTIMIZATION APPROACH
(PSIPSO)
The procedure for PSIPSO is as follows,
1. Configure the master slave environment.
2. The initial swarm is generated and initialized by the master.
3. The master sends the initial swarm to all the salves.
4. The slaves evaluate the initial swarm using the fitness function
and select the personal best and global best of the swarm.
5. Each of the slaves calculates the fitness function, and then
updates the velocity and position and sends each of its optimal
solution to the master after the specified number of iteration is
completed.
6. The master decides the best solution after receiving the results
from all the slaves based on the objective function after the
maximum number of iterations specified is completed.
145
Initialize the population Input number of processors,number of jobs and population size
Compute the objective function
The master sends the unique combination of differentparticles to the slaves
Start
Invoke IPSO
Slave 1 Slave 2Slav
Slave 3 Slave n
The master receives the updated best particle form all the slaves afterpre-determined number of iterations is completed
The master decides the global best value
A
Figure 6.4 Flowchart for the proposed PSIPSO algorithm
146
A
Choose the minimum ‘F’ of all particles as the gbest
If E < best ‘E’ (Pbest) so far
Search isterminated
optimal solutionreached
For each generation
For each particle
Current value = new pbest
No
Yes
Calculate particle velocity
Calculate particle position
Update memory of each particle
End
End
Return by using IPSO
Stop
Figure 6.4 (Continued)
147
6.6 PROPOSED PARALLEL ASYNCHRONOUS IMPROVED
PARTICLE SWARM OPTIMIZATION APPROACH (PAIPSO)
The weakness of the proposed PSIPSO algorithm is that, the
schedule for the next iteration is analysed after the current iteration is
completed. This can be overcome by considering a parallel asynchronous
algorithm. The goal is to have no idle processors as one moves from one
iteration to the next. To implement a PAIPSO algorithm is to separate the update
actions coupled with each sequence and those linked with the entire swarm.
PAIPSO is implemented using a maser-slave approach. The master
processor holds the queue of feasible particles to be sent to the slave
processors. The master performs all decision making processes such as
velocity updation, position updation and convergence checks. The slaves
perform the function evaluations for the particles sent to them. The tasks
performed by the master and slave are as follows, (Koh et al 2006)
Master Processor
1. Initialize all optimization parameters and particle positions
and velocities.
2. Holds a queue of particles for the slave processors to evaluate
3. Updates the particle positions and velocities based on the
currently available information.
4. Sends the next particle in the queue to an available slave
processor
5. Receives cost function values from the slave processors.
6. Checks convergence.
148
Check Convergence
Update
Master initializes
Xf Xf Xf
No of Particles
No
of It
erat
ions
CheckConvergence and
Update
Initialize
Xf
Xf
Xf
Xf
Xf
Xf
No of Particles
Slave Processor
1. Receives the particle from the master processor.
2. Evaluates the objective function of the particle sent to all
the slaves.
3. Sends the cost function value to the master processor.
Figure 6.5 Block diagram of parallel synchronous IPSO approach
Figure 6.6 Block diagram of parallel asynchronous IPSO approach
149
Block diagrams for parallel synchronous and parallel asynchronous
IPSO algorithms are shown in Figures 6.5 and 6.6. In which Grey boxes
indicate the first set of particles evaluated by each algorithm.
After completion of initialization step by the master processor,
particles are sent to the slave processors to evaluate the objective (analysis)
function. The initial step of the optimization is identical to that of the PSIPSO
algorithm. After initialization, the PAIPSO algorithm uses a first-in-first-out
centralized task queue to determine the order in which the particles are sent to
the slave processors.
Whenever a slave processor completes a function evaluation, it
returns the cost function value and the corresponding particle number to the
master processor, which places the particle number at the end of the task
queue. Since the order in which particles report their results, vary,
randomness in the particle order occurs.
Once a particle reaches the front of the task queue, the master
processor updates its position and velocity and sends it to the next available
slave processor. If the number of slave processors is the same as the number
of particles, the next available processor will then always be the same
processor that handled the particle initially. If the number of slave processors
is less than the number of particles, the next available processor will then be
the processor which happens to be free when the particle reaches the front of
the task queue. Even with heterogeneity in tasks and/or computational
resources, the task queue ensures that each particle performs approximately
the same number of function evaluations over the course of an optimization.
The proposed parallel synchronous and asynchronous algorithms
are experienced with multiprocessor task scheduling. Static and dynamic
(with and without load balancing) task scheduling problems.
150
6.7 SIMULATION PROCEUDRE
The present section provides the details of the simulation carried
out for implementing the proposed parallel approaches PSIPSO and PAIPSO.
Benchmark datasets are taken from EricTailard’s site for dynamic
task scheduling. Two datasets are taken for simulation. Data set 1involves
50 tasks and 20 processors. Data set 2 involves 100 tasks with 20 processors.
The data for the static scheduling is randomly generated, i.e., 2 processors
with 20 tasks, 3 processors with 20 tasks, 3 processors with 40 tasks, 4
processors with 30 tasks, 4 processors with 50 tasks, 5 processors with 45
tasks and 5 processors with 60 tasks.
To demonstrate the effectiveness of the proposed parallel
approaches PSIPSO and PAIPSO, the proposed approaches are run with 30
independent trials with different values of random seeds and control parameters.
The optimal result is obtained for the following parameter settings.
Improved Particle Swarm Optimization:
1. The initial solution is generated randomly
2. C1g, C1b and C2 = 2,2 and 2
3. Population size = Twice the number of tasks (Salman et al
2002)
4. Wmin - Wmax = 0.5
5. Iteration = 500
The proposed hybrid approaches PSIPSO and PAIPSO are
developed using MATLAB R2009 and executed in a PC with Intel core i3
processor with 3 GB RAM and 2.13 GHz speed.
151
6.8 STATIC SCHEDULING
In this method, the tasks are considered as independent of one
another. Hence, the tasks can be executed in any order. The objective function
is the same as specified in the Equations (2.4) to (2.9).
The proposed parallel algorithms PSIPSO and PAIPSO are applied
to static task scheduling and the results achieved are tabulated and shown in
Table 6.1.
6.8.1 Results and Discussion
The proposed parallel approaches PSIPSO and PAIPSO are tested
with the datasets specified in the simulation procedure for multiprocessor
static independent task scheduling problem. The obtained results have been
tabulated and is shown in Table 6.1.
Table 6.1 Total finishing time and average waiting time using theproposed PSIPSO and proposed PAIPSO
No ofprocessors
No of jobsProposedPSIPSO
ProposedPAIPSO
AWT TFT AWT TFT2 20 17.79 48.90 16.08 42.49
3 20 34.56 47.01 30.64 44.92
3 40 29.73 57.02 24.96 56.28
4 30 20.65 61.96 18.92 57.92
4 50 23.79 67.34 20.61 56.74
5 45 26.07 59.87 22.67 56.06
5 60 28.12 62.83 25.47 60.32
152
The proposed parallel approach PSIPSO produces total finishing
time for the dataset 2 processors with 20 tasks, as 48.90s and average waiting
time as 17.79s. For the same dataset, the parallel approach PAIPSO produces
total finishing time as 42.49s and average waiting time as 16.08s, which is
better compared with the parallel approach PSIPSO. For the dataset 4
processors with 50 tasks, PSIPSO produces total finishing time as 67.34s and
average waiting time as 23.79s. For the same dataset, PAIPSO produces total
finishing time as 56.74s and average waiting time as 20.61s.
Thus, the results achieved using the parallel approaches for the
static task scheduling problem, PAIPSO yields better results than the parallel
approach PSIPSO. The behavioural and convergence characteristics of the
proposed parallel approach PAIPSO provides a better solution.
6.8.2 Performance Comparison
In order to validate the performance of the Parallel approaches
PSIPSO and PAIPSO, comparisons have made with the hybrid heuristic
approach IPSO-ACO for the same problem with same datasets are shown in
Table 6.2.
For the dataset 2 processors with 20 tasks, IPSO-ACO produces
average waiting time as 18.02s, total finishing time as 48.92s, the proposed
PSIPSO produces average waiting time as 17.79s and total finishing time as
48.90s as total finishing time. The proposed PAIPSO produces average
waiting time as 16.08s and total finishing time as 42.49s. For the dataset 5
processors with 45 tasks, IPSO-ACO produces 26.21s as average waiting
time, 60.87s as total finishing time, the proposed PSIPSO produces 26.07s as
the average waiting time and 59.87s as the total finishing time, and the
proposed PAIPSO produces 22.67s as average waiting time and 56.06s as
total finishing time. For the dataset 5 processors with 60 tasks, IPSO-ACO
153
produces average waiting time as 28.42s, total finishing time as 64.26s, the
proposed PSIPSO produces 28.12s as the average waiting time and 62.83s as
the total finishing time. The proposed PAIPSO produces 25.47s as average
waiting time and 60.32 as the total finishing time.
Table 6.2 Comparison of job total finishing time and average waitingtime using proposed parallel approaches PSIPSO andPAIPSO with hybrid approach IPSO-ACO
No ofprocessors
No ofjobs
IPSO-ACO ProposedPSIPSO
ProposedPAIPSO
AWT TFT AWT TFT AWT TFT2 20 18.02 48.92 17.79 48.90 16.08 42.49
3 20 35.12 48.00 34.56 47.01 30.64 44.92
3 40 30.16 57.32 29.73 57.02 24.96 56.28
4 30 21.87 62.45 20.65 61.96 18.92 57.92
4 50 24.63 67.45 23.79 67.34 20.61 56.74
5 45 26.21 60.87 26.07 59.87 22.67 56.06
5 60 28.42 64.26 28.12 62.83 25.47 60.32
It is empirically proved that the proposed parallel algorithms,
PSIPSO and PAIPSO simultaneously reduces the total finishing time and
average waiting time in comparison with hybrid heuristic approach IPSO-
ACO. This has been achieved by the introduction of bad experience and good
experience component in the velocity updation equation and also parallel
computation.
Thus, based on the results, it can be observed that the proposed
parallel algorithm PAIPSO achieves better results than the hybrid heuristic
approach IPSO-ACO.
154
The variations in total finishing time and waiting time using
different approaches IPSO-ACO, PSIPSO and PAIPSO are shown from
Figures 6.7 to 6.13
Figure 6.7 Total finishing time and average waiting time for 2 processorswith 20 jobs using IPSO-ACO, PSIPSO and PAIPSO
Figure 6.8 Total finishing time and average waiting time for 3 processorswith 20 jobs using IPSO-ACO, PSIPSO and PAIPSO
155
Figure 6.9 Total finishing time and average waiting time for 3 processorswith 40 jobs using IPSO-ACO, PSIPSO and PAIPSO
Figure 6.10 Total finishing time and average waiting time for 4 processorswith 30 jobs using IPSO-ACO, PSIPSO and PAIPSO
156
Figure 6.11 Total finishing time and average waiting time for 4 processorswith 50 jobs IPSO-ACO, PSIPSO and PAIPSO
Figure 6.12 Total finishing time and average waiting time for 5 processorswith 45 jobs using IPSO-ACO, PSIPSO and PAIPSO
157
Figure 6.13 Total finishing time and average waiting time for 5 processorswith 60 jobs using IPSO-ACO, PSIPSO and PAIPSO
It has been proven that the proposed parallel approach PAIPSO
determines reasonable quality solutions much faster than the other
approaches. The inclusion of the worst component along with the best
component and the parallel approach tends to simultaneously minimize the
average waiting time and the total finishing time.
At the outset, the results infer that the parallel Asynchronous
Enhanced Particle Swarm Optimization (PAIPSO) yields an improvement in
the performance when compared to the other hybrid PSO approaches.
6.9 DYNAMIC TASK SCHEDULING WITHOUT LOAD
BALANCING
The foremost goal of dynamic task scheduling problem is to reduce
the makespan. Hence, to minimize the total execution time the objective
function is the same as represented in the Equations (2.10) to (2.12).
158
6.9.1 Results and Discussion
The proposed parallel approaches PSIPSO and PAIPSO are tested
for the dynamic tasks scheduling problem with datasets specified in the
simulation procedure. The results obtained are shown in Table 6.3.
Table 6.3 Best cost, worst cost, average cost and convergence time usingIPSO–ACO, PSIPSO and PAIPSO for dynamic taskscheduling without load balancing
Method IPSO -ACOProposedPSIPSO
ProposedPAIPSO
Number of tasks 50 100 50 100 50 100Best Cost 2131 4226 2126 4196 2126 4196
Worst Cost 2853 4793 2792 4751 2786 4703Average Cost 2492 4509.5 2459 4473.5 2456 4506.9
Convergence Timein seconds 5.9822 8.1236 3.4862 4.4642 1.8674 2.5691
Parallelization of the Improved Particle Swarm Optimization is
proposed to speed up the execution and to provide concurrence. The obtained
results, best, average and worst cost for dynamic task scheduling using the
parallel algorithms PSIPSO and PAIPSO have been compared with that of the
hybrid algorithm IPSO-ACO. The results show that the best cost achieved using
PAIPSO is 2126 for data set 1 and 4196 for data set 2 and is shown in Table 6.3.
When compared to the other methods, the average cost obtained is also better in
the case of the proposed algorithm. The convergence time is drastically reduced
for the proposed parallel algorithm PAIPSO compared with hybrid approach
IPSO-ACO, and is 1.86s for dataset1 and 2.56 s for dataset 2.
Thus it is inferred from the result that the Asynchronous version of
IPSO performs better than the Synchronous parallel version of IPSO. PAIPSO
is (4 to 6s) faster than the hybrid approach IPSO-ACO.
159
Figures 6.14 and 6.15 depicts the best cost obtained using the
proposed parallel method PSIPSO and PAIPSO for data set 1 and data set2.
Figure 6.14 Best cost for 50 tasks and 20 processors using IPSO-ACO,PSIPSO and PAIPSO
Figure 6.15 Best cost for 100 tasks and 20 processors using IPSO-ACO,PSIPSO and PAIPSO
160
The Parallel approach PAIPSO is faster and performs better than
with all other algorithms proposed in the present research.
6.9.2 Performance comparison
The performance of the proposed parallel approach PAIPSO is
compared with the previously proposed (Visalakshi and Sivanandam 2009)
approaches PSPSO and PAPSO for the same datasets and for multiprocessor
dynamic task scheduling.
Table 6.4 Performance comparison of PAIPSO with parallel PSOapproaches
MethodPSPSO
(Visalakshi andSivanandam 2009)
PAPSO(Visalakshi and
Sivanandam 2009)
ProposedPAIPSO
Number of tasks 50 100 50 100 50 100
Best cost 2186 4496 2186 4496 2126 4196
Worst cost 2983 4968 2888 4712 2786 4703
Average cost 2594.5 4768.9 2477.6 4526.3 2456 4506.9
Convergence timein seconds
3.4256 4.4648 1.9619 2.7571 1.8674 2.5691
The PSPSO produces the best cost for dataset 1 as 2186, PAPSO
produces best cost as 4496 and the proposed PAIPSO produces 2126 as best
cost for dataset 1 and 4196 as the best cost for dataset 2. Comparing the
convergence time, the proposed PAIPSO is faster than the parallel approaches
PSPSO and PAPSO.
161
This comparison reveals that the proposed parallel approach
PAIPSO achieves better results and also that there is a significant difference
in the convergence time, when tested for the multiprocessor task scheduling
problem.
6.10 DYNAMIC TASK SCHEDULING WITH LOAD BALANCING
In order to improve the processor performance and utilization, load
balancing of tasks have to be considered. Therefore the concept of load
balancing is dealt, in which the objective function is the same as represented
in the Equations (2.13) to (2.16).
6.10.1 Results and Discussion
Table 6.5 shows, the best cost, worst cost, average cost and
convergence time for the hybrid algorithms, IPSO-ACO, PSIPSO and
PAIPSO for dynamic task scheduling with load balancing.
Table 6.5 Best cost, worst cost, average cost and convergence time usingIPSO–ACO, PSIPSO and PAIPSO for dynamic taskscheduling with balancing
MethodIPSO -ACO
Proposed
PSIPSO
Proposed
PAIPSO
Number of tasks 50 100 50 100 50 100
Best Cost 13.0582 22.1531 13.0942 22.1644 13.0942 22.1644
Worst Cost 11.4922 20.9624 11.4983 20.9761 12.4386 21.9982
Average Cost 12.2752 21.5576 12.2964 21.5703 12.1528 22.0814
ConvergenceTime in seconds 7.5695 10.6314 4.8964 5.7687 2.1032 2.8712
162
The best cost obtained for dataset 1 using the parallel hybrid
approach IPSO-ACO is 13.0582, using the proposed parallel approach
PSIPSO is 13.0942 and using the proposed parallel approach PAIPSO is
13.0942. For dataset 2, IPSO-ACO produces 22.1531 as the best cost, the
proposed PSIPSO produces 22.1644 as the best cost and the proposed
PAIPSO produces 22.1644 as the best cost. The convergence time for the
hybrid approach is 7.6s, 10.63s for dataset1 and dataset2. The proposed
parallel approaches PSIPSO and PAIPSO produces convergence time as
4.89s, 2.1s for dataset 1 and 5.76s, 2.87s for dataset 2 respectively. Thus, the
convergence time achieved reveals that the proposed parallel approach
PAIPSO produces better results faster than PSIPSO and the hybrid approach
IPSO-ACO.
The best cost achieved using the proposed parallel approaches
PSIPSO and PAIPSO are compared with the hybrid approach IPSO-ACO for
data set 1 and data set2 and are shown in Figures 6.16 and 6.17.
Figure 6.16 Best cost for 50 tasks and 20 processors using IPSO-ACO,PSIPSO and PAIPSO
163
Figure 6.17 Best cost for 100 tasks and 20 processors using IPSO-ACO,PSIPSO and PAIPSO
The PAIPSO converges faster than the PSIPSO because the idle
time of the processors is considerably reduced.
6.10.2 Performance Comparison
The performance of the proposed parallel approaches PSIPSO and
PAIPSO are compared with the previously proposed ((Visalakshi and
Sivanandam 2009) parallel methods PSPSO and PAPSO for the same datasets
and for multiprocessor dynamic task scheduling.
The PSPSO produces the best cost for dataset 1 as 12.982, PSPSO
produces 12.982 and the proposed parallel approach PAIPSO produces
13.0942. For dataset 2, PSPSO produces best cost as 21.998, PAPSO
produces 21.998 and the proposed parallel approach PAIPSO produces
22.1644. The convergence time for the dataset 1 using PSPSO is 3.98s, using
PAPSO is 2.3s and using the proposed PAIPSO is 2.1s.
164
Table 4.6 Performance comparisons of PAIPSO with Parallel PSOapproaches
MethodPSPSO
(Visalakshi andSivanandam 2009)
PAPSO(Visalakshi and
Sivanandam 2009)
ProposedPAIPSO
Number of tasks 50 100 50 100 50 100
Best cost 12.982 21.998 12.982 21.998 13.0942 22.1644
Worst cost 10.863 19.429 12.348 21.008 12.4386 21.9982
Average cost 11.789 21.032 12.215 21.816 12.1528 22.0814
Convergencetime in seconds 3.9831 5.1956 2.3041 3.1553 2.1032 2.8712
The proposed parallel approach PAIPSO converges very fast when
compared with the other parallel approaches PSPSO and PAPSO. Thus, the
result reveals that the proposed parallel approach PAIPSO outperforms the
other parallel approaches PSPSO and PAPSO, because of the inclusion of the
bad experience particles in the velocity equation of IPSO which plays a major
role along with parallelization concept, improves the results to near optimal
solution when applied to the task assignment problem with dynamic tasks.
6.11 CONCLUSION
The present chapter proposed parallel approaches PSIPSO and
PAIPSO to solve different types of task scheduling problems such as static
and dynamic task scheduling with and without load balancing. The proposed
parallel approaches locate the optimum solution iteratively from the initial
randomly generated search space. The performance of the proposed PAIPSO
is tested using random and bench mark data sets.
The proposed approach yields better results for both the static and
dynamic task scheduling problem. The proposed parallel approach PAIPSO
165
reduces simultaneously both average waiting time and total finishing time
when applied to static independent task scheduling. For the dataset 5
processors with 45 tasks, IPSO-ACO produces total finishing time as 60.87s
and average waiting time as 26.21s, PSIPSO produces average waiting time
as 26.07s, total finishing time as 59.87s and the proposed PAIPSO produces
average waiting time as 22.67s and total finishing time as 56.06s. Based on
the results obtained, it is observed that the proposed parallel approach
PAIPSO provides better results.
The proposed parallel approach PAIPSO is applied to dynamic task
scheduling without load balancing. The results achieved by the proposed
parallel approach PAIPSO is compared with parallel approaches proposed
earlier namely PSPSO and PAPSO. For dataset1, the best cost achieved by
PSPSO is 2186, PAPSO achieves best cost as 2186 and the proposed parallel
approach PAIPSO achieves the best cost as 2126 which is better than
approaches compared. The proposed parallel approach PAIPSO is 5.5s faster
than the hybrid heuristic approach IPSO-ACO for dataset 2 and 4.11s faster
than the result produced by the hybrid approach IPSO-ACO for dataset 1.The
proposed parallel approach have been compared with the other previously
proposed parallel approaches namely PSPSO and PAPSO and the comparison
results concludes that the proposed parallel approach is 0.18s faster than
PAPSO and 1.89s faster than PSPSO for dataset2.
The proposed parallel approaches PSIPSO and PAIPSO are applied
to dynamic task scheduling with load balancing. The results achieved by the
proposed approaches are compared with parallel approaches proposed earlier
namely PSPSO and PAPSO. For dataset 2, the best cost achieved by PSPSO
is 21.998, the best cost achieved by PAPSO is 21.998 and the best cost
achieved by the proposed parallel approach PAIPSO is 22.1644. The
proposed parallel approach PAIPSO converges 1.8799s faster than PSPSO,
166
0.2s faster than PAPSO for dataset 1. For dataset 2, PAIPSO is 2.3244 times
faster than PSPSO, 0.2841s faster than PAPSO. The proposed parallel
approach yields better results for both static and dynamic task scheduling
problem.
From the results of simulation, it is observed that the proposed
parallel approach PAIPSO rapidly increases the performance of the solution
and prevents trapping to a local optimal value. Further, the proposed PAIPSO
enhances the probability to find the global best solution, thereby allowing
faster convergence for all the data sets. Thus, the proposed parallel approach
PAIPSO produced significant result than GA, standard PSO and hybrid
approaches (IPSO-SA, IPSO-AIS and IPSO-ACO).