Download COMP 5704 Project Presentation

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Parallelization of a Swarm
Intelligence System
Iman Eshraghi
School of Computer Science
University of Ottawa, Ottawa, Canada
<ieshr007@uottawa.ca>
COMP 5704 Project Presentation
Contents
 Introduction
 Problem Statement
 Related work
 ABC Algorithm
 Methodology
 Parallelization
 Results
 Conclusion
 References
COMP 5704 Project Presentation
Introduction
Swarm Intelligence
Artificial / Natural
Systems
- Agents
- Boids
COMP 5704 Project Presentation
Introduction
SI concepts:
 self organizing
 Feedback
 Interaction
 labor division
 Simultaneous task performance
 Response to the environment
COMP 5704 Project Presentation
Introduction
Optimization (problems – algorithms)
:: discrete variables -> combinatorial optimization problems
:: continuous variable -> multimodal problems,..
Ackley’s Mulitmodal Function
COMP 5704 Project Presentation
Introduction
Optimization (algorithms)
• Heuristic vs. Meta-heuristic
COMP 5704 Project Presentation
Introduction
Meta-heuristic Optimization Techniques
COMP 5704 Project Presentation
Problem Statement
- Hyphothesis
• Metaheuristic optimization technique of choice not
optimal
- Goal
• Optimizing the metaheuristic optimization
technique
• Presenting a parallel version of the algorithm for
shared memory architecture
COMP 5704 Project Presentation
Related Work
Parallelization of the algorithm by assigning
different threads to separate swarms
Parallelization strategies for a distributed memory
multiprocessor architecture under the Message
Passing Interface (MPI)
CUDA-based Bees Algorithm called CUBA
COMP 5704 Project Presentation
ABC
- Proposed by Dervis Karaboga in 2005
Why ABC?
Applications:
o
Artificial networks
o
Graph Theory
o
TSP
o
Leaf-constrained Spanning Trees
o
Power loss Minimization in Distributed networks
…
COMP 5704 Project Presentation
ABC
Definitions:
Food Source
• Bees
• Employed
• Unemployed
 Scouts
 Onlookers
• Dancing Area
COMP 5704 Project Presentation
ABC
Algorithm (pseudo-code)
COMP 5704 Project Presentation
ABC
Movement of Onlookers:
•
•
Movement of Scouts:
•
COMP 5704 Project Presentation
Methodology
Theory
COMP 5704 Project Presentation
Parallelization
Matlab Parallel Computing Toolbox
COMP 5704 Project Presentation
Parallelization
Flynn's
taxonomy
Single instruction
stream
Multiple instruction
streams
Single data stream
SISD
MISD
Multiple data streams
SIMD
MIMD
Single program
SPMD
SPMD
(Single Program Multiple Data)
COMP 5704 Project Presentation
Multiple programs
MPMD
Parallelization
spmd
numlabs
labindex
labSend(data, workerId)
labReceive(workerId)
COMP 5704 Project Presentation
Parallelization
An spmd program needs workers to cooperate on the
program
-matlabpool open local 4
The client and the workers share a single program in
which some commands are delimited within blocks
opening with spmd and closing with end.
The client executes commands up to the first spmd
block, when it pauses, the workers execute the code
in the block. Once they finish, the client resumes
execution.
COMP 5704 Project Presentation
Parallelization
spmd
SNp=SourceNum/numlabs;
a = ( labindex - 1 ) *SNp+1;
b =SNp* labindex;
S_p_food=food(a:b);
[min_value,index]=min([S_p_food.fit]);
BestSource=S_p_food(index);%Global food
.
.
Employed Search Step
Onlooker Search Step
Scout Search Step
.
.
end
COMP 5704 Project Presentation
Results
Comparison
Serial:
Parallel:
COMP 5704 Project Presentation
Results
Serial
Parallel
COMP 5704 Project Presentation
Results
Speed up => 120.98 / 63.15 = 1.9 x
COMP 5704 Project Presentation
Conclusion
The applied parallelization technique for ABC
algorithm has lead to speed up.
The quality of results are not necessarily improved
or the opposite in this technique.
Future Work:
Extending the Algorithm on the Cluster through
Matlab Distributed Computing Server
COMP 5704 Project Presentation
References
• Harikrishna Narasimhan. Parallel artifcial bee colony (pabc) algorithm. 2009
World Congress on Nature & Biologically Inspired Computing (NaBIC), 2009.
• Fahad S. Abu-Mouti and Mohamed E. El-Hawary. Overview of artifcial bee
colony (abc) algorithm and its applications. 2012 IEEE International Systems
Conference SysCon2012, Mar 2012.
• Guo-Heng Luo, Sheng-Kai Huang, Yue-Shan Chang, and Shyan-Ming Yuan.
A parallel bees algorithm implementation on GPU. Journal of Systems
Architecture, 60(3):271-279, Mar 2014.
• Dusan Ramljakb Milica Selmicc & Dusan Teodorovicc Tatjana Davidovica,
Tatjana Jak-sica. Parallelization strategies for bee colony optimization based
on message passing communication protocol. Optimization, 62(8):1113-1142,
Aug 2013.
• Matlab, Mathworks: http://www.mathworks.com/products/parallel-computing ,
http://www.mathworks.com/help/distcomp/index.html
• Wikipedia:https://en.wikipedia.org/wiki/Flynn%27s_taxonomy#MPMD_.28Mult
iple_programs.2C_multiple_data_streams.29
COMP 5704 Project Presentation
Questions
Q 1:
What are some of the difference between heuristic
and metaheuristic algorithms?
Q 2:
Can you name some of the algorithms in each of
the above-mentioned categories?
Q 3:
Can we predict whether parallelization of
optimization algorithms will achieve a speed up?
COMP 5704 Project Presentation
Related documents