Artificial Bee Colony Algorithm using MPI

Similar documents
Optimization of Benchmark Functions Using Artificial Bee Colony (ABC) Algorithm

Artificial Bee Colony (ABC) Optimization Algorithm for Solving Constrained Optimization Problems

Artificial bee colony algorithm with multiple onlookers for constrained optimization problems

New Method for Accurate Parameter Estimation of Induction Motors Based on Artificial Bee Colony Algorithm

Solving Constraint Satisfaction Problems by Artificial Bee Colony with Greedy Scouts

ORDER BASED EMIGRANT CREATION STRATEGY FOR PARALLEL ARTIFICIAL BEE COLONY ALGORITHM. Department, Antalya, Turkey. Samsun, Turkey

Performance Comparison of ABC and A-ABC Algorithms on Clustering Problems

A heuristic approach of the estimation of process capability indices for non-normal process data using the Burr XII distribution

The Artificial Bee Colony Algorithm for Unsupervised Classification of Meteorological Satellite Images

Particle Swarm Optimization Artificial Bee Colony Chain (PSOABCC): A Hybrid Meteahuristic Algorithm

Comparison between Different Meta-Heuristic Algorithms for Path Planning in Robotics

In recent years several different algorithms

ABC Optimization: A Co-Operative Learning Approach to Complex Routing Problems

Solving Travelling Salesman Problem Using Variants of ABC Algorithm

Enhanced ABC Algorithm for Optimization of Multiple Traveling Salesman Problem

Fast Artificial Bee Colony for Clustering

COMPARISON BETWEEN ARTIFICIAL BEE COLONY ALGORITHM, SHUFFLED FROG LEAPING ALGORITHM AND NERO-FUZZY SYSTEM IN DESIGN OF OPTIMAL PID CONTROLLERS

NOVEL CONSTRAINED SEARCH-TACTIC FOR OPTIMAL DYNAMIC ECONOMIC DISPATCH USING MODERN META-HEURISTIC OPTIMIZATION ALGORITHMS

Enhanced Artificial Bees Colony Algorithm for Robot Path Planning

RELEVANCE OF ARTIFICIAL BEE COLONY ALGORITHM OVER OTHER SWARM INTELLIGENCE ALGORITHMS

Test Case Optimization Using Artificial Bee Colony Algorithm

Research of The WSN Routing based on Artificial Bee Colony Algorithm

International Journal of Information Technology and Knowledge Management (ISSN: ) July-December 2012, Volume 5, No. 2, pp.

Use of Nature-inspired Meta-heuristics for Handwritten Digits Recognition

Research Article Polygonal Approximation Using an Artificial Bee Colony Algorithm

A META-HEURISTIC APPROACH TO LOCATE OPTIMAL SWITCH LOCATIONS IN CELLULAR MOBILE NETWORKS

IMAGE CLUSTERING AND CLASSIFICATION

Pareto Front Feature Selection based on Artificial Bee Colony Optimization

Power Load Forecasting Based on ABC-SA Neural Network Model

Optimization of a Multiproduct CONWIP-based Manufacturing System using Artificial Bee Colony Approach

Modified Particle Swarm Optimization with Novel Modulated Inertia for Velocity Update

Parallel K-means Clustering. Ajay Padoor Chandramohan Fall 2012 CSE 633

Travelling Salesman Problem Using Bee Colony With SPV

Parallelization and Optimization of Multiple Biological Sequence Alignment Software Based on Social Behavior Model

Golden Ball: A Novel Meta-Heuristic Based on Soccer Concepts

2014, IJARCSSE All Rights Reserved Page 1284

Sci.Int.(Lahore),28(1), ,2016 ISSN ; CODEN: SINTE 8 201

Intelligent routing approaches using Bacteria Foraging Algorithm and Artificial Bee Colony

African Buffalo Optimization (ABO): a New Meta-Heuristic Algorithm

Quick Combinatorial Artificial Bee Colony -qcabc- Optimization Algorithm for TSP

Performance Analysis of Min-Min, Max-Min and Artificial Bee Colony Load Balancing Algorithms in Cloud Computing.

Application of Fuzzy and ABC Algorithm for DG Placement for Minimum Loss in Radial Distribution System

Improved wavelet based compression with adaptive lifting scheme using Artificial Bee Colony algorithm

Distribution System Network Reconfiguration by using Artificial Bee Colony Algorithm.

Parallel Artificial Bee Colony (PABC) for Job Shop Scheduling Problems Sudip Kumar Sahana, Indrajit Mukherjee, Prabhat Kumar Mahanti

A Hybrid Fireworks Optimization Method with Differential Evolution Operators

Parallel Implementation of a Random Search Procedure: An Experimental Study

Artificial Bee Colony Based Load Balancing in Cloud Computing

AUTOMATED TEST CASE GENERATION AND OPTIMIZATION: A COMPARATIVE REVIEW

REMOTE SENSING IMAGE CLASSIFICATION USING ARTIFICIAL BEE COLONY ALGORITHM

Robust Descriptive Statistics Based PSO Algorithm for Image Segmentation

Use of the Improved Frog-Leaping Algorithm in Data Clustering

Nature Inspired Meta-heuristics: A Survey

Hybrid Approach for Energy Optimization in Wireless Sensor Networks

Solving the Scheduling Problem in Computational Grid using Artificial Bee Colony Algorithm

IMPLEMENTATION OF A HYBRID LOAD BALANCING ALGORITHM FOR CLOUD COMPUTING

Parallel Convex Hull using MPI. CSE633 Fall 2012 Alex Vertlieb

An Overview of Artificial Bee Colony Algorithm Suhan YANG 1,a, Hongwei JIANG 2,b

Cooperative Coevolution using The Brain Storm Optimization Algorithm

Artificial Bee Colony based Test Data Generation for Data-Flow Testing

A comparative study of several metaheuristic algorithms for optimizing complex 3 D well path designs

A Survey on Honey Bee Foraging Behavior and Its Improvised Load Balancing Technique

REVIEW ON OPTIMIZATION TECHNIQUES USED FOR IMAGE COMPRESSION

An Efficient Optimization Method for Extreme Learning Machine Using Artificial Bee Colony

arxiv: v1 [math.oc] 13 Dec 2014

Artificial Fish Swarm Algorithm for Unconstrained Optimization Problems

The Design of Pole Placement With Integral Controllers for Gryphon Robot Using Three Evolutionary Algorithms

Parallel Merge Sort Using MPI

A novel meta-heuristic algorithm for numerical function optimization: Blind, naked mole-rats (BNMR) algorithm

Fuzzy Relational System for Identification of Gene Regulatory Network

QOS BASED HYBRID SWARM INTELLIGENT INTRUSION DETECTION SYSTEM FOR NETWORK SECURITY

Applied Soft Computing

Research Article Fuzzy Multilevel Image Thresholding Based on Modified Quick Artificial Bee Colony Algorithm and Local Information Aggregation

Vanishing point detection based on an artificial bee colony algorithm

The movement of the dimmer firefly i towards the brighter firefly j in terms of the dimmer one s updated location is determined by the following equat

PARALLEL ID3. Jeremy Dominijanni CSE633, Dr. Russ Miller

ABCRNG - Swarm Intelligence in Public key Cryptography for Random Number Generation

Optimistic Path using Artificial Bee Colony Approach

Color Image Segmentation Using the Bee Algorithm in the Markovian Framework

Hybrid Seeker Optimization Algorithm for Global Optimization

Optimal power flow with SVC devices by using the artificial bee colony algorithm

Chaotic Bee Swarm Optimization Algorithm for Path Planning of Mobile Robots

A bi-objective turning restriction design problem in urban road networks

আ ঐ হ ফ. An Enhanced Harmony Search Method for Bangla Handwritten Character Recognition Using Region Sampling

Randomized Memetic Artificial Bee Colony Algorithm

IJAMS CNC TURNING PROCESS OPTIMIZATION USING BIO-INSPIRED ALGORITHM. R. S. S. Prasanth 1, K. Hans Raj 1

A Hybrid Artificial Bee Colony Algorithm for Graph 3-Coloring. Abstract

Hybrid Optimization Coupling Electromagnetism and Descent Search for Engineering Problems

6. Tabu Search. 6.3 Minimum k-tree Problem. Fall 2010 Instructor: Dr. Masoud Yaghini

Determining Line Segment Visibility with MPI

ABC Analysis For Economic operation of power system

COMPUTING OVERLAPPING LINE SEGMENTS. - A parallel approach by Vinoth Selvaraju

International Journal of Computer & Organization Trends Volume 3 Issue 1 January to February 2013

New algorithm for analyzing performance of neighborhood strategies in solving job shop scheduling problems

ScienceDirect. Centroid Mutation Embedded Shuffled Frog-Leaping Algorithm

With the fast growing size and complexity of modern

Anis Ladgham* Abdellatif Mtibaa

Multi-Objective Vehicle Routing Problems with Time Windows: a Vector Evaluated Artificial Bee Colony Approach

QoS based Optimal Routing in WSN using Hybrid Intelligent Bee Colony Agent

Enhanced Bee Colony Algorithm for Efficient Load Balancing and Scheduling in Cloud

Transcription:

Artificial Bee Colony Algorithm using MPI Pradeep Yenneti CSE633, Fall 2012 Instructor : Dr. Russ Miller University at Buffalo, the State University of New York

OVERVIEW Introduction Components Working Artificial Bee Colony algorithm (RAM) Artificial Bee Colony algorithm (Parallel) Performance An Alternative Parallel Approach Observations / Limitations Future goals References

INTRODUCTION Artificial Bee Colony (ABC) algorithm is a swarm-based meta-heuristic optimization algorithm. Algorithm based on the foraging behavior of bees in a colony. Applications : Optimal multi-level thresholding, MR brain image classification, face pose estimation, 2D protein folding

COMPONENTS Food Source : A food source location denotes the possible solution (vector with n parameters).eg. Amount of food in the source denotes quality (fitness). Employed Bees : Retrieve food from source and report back neighboring sources. One bee per source. Scout Bees : Find and update different sources. Employed bees whose food source is exhausted become Scout bees. Onlooker Bees : Choose food source based on inputs from Employed bees.

WORKING Initialization phase : Vector x m ( m = 1 SN ). Each vector x m contains n variables (1 n). x mi =l i +rand(0,1) (u i l i ). l i, u i = bounds --- (1) Employed bees phase : Food source υ mi =x mi +ϕ mi (x mi x ki ) --- (2) Fitness function fit m (x m ) = 1/(1 + f m (x m )) --- (3) Onlooker bees phase : Probability p m = fit m (x m ) / m=1 SN fit m (x m ) --- (4) Scout bees phase : New food sources are randomly selected and solutions selected based on (1).

WORKING

WORKING Serial representation n Rows, single processor (n food sources) 1 4.113152 7.630029 18.6177 9.005129 17.91446 2 9.935555 13.37011 4.745863 10.6545 19.78366 3 10.95558 19.49226 17.84674 10.75404 18.06841 4 18.53284 0.792465 18.59932 3.516931 14.82533 5 14.34575 3.136435 5.886008 6.576565 7.916828 6 17.86021 14.02121 17.46455 14.59524 16.75909 7 3.731504 5.224778 16.29288 11.44785 0.314989 8 0.627248 13.82126 3.269592 13.46171 13.24224

WORKING Parallel representation - n Rows split among m processors (n/m food sources per processor) 1 4.113152 7.630029 18.6177 9.005129 17.91446 2 9.935555 13.37011 4.745863 10.6545 19.78366 3 10.95558 19.49226 17.84674 10.75404 18.06841 4 18.53284 0.792465 18.59932 3.516931 14.82533 5 14.34575 3.136435 5.886008 6.576565 7.916828 6 17.86021 14.02121 17.46455 14.59524 16.75909 7 3.731504 5.224778 16.29288 11.44785 0.314989 8 0.627248 13.82126 3.269592 13.46171 13.24224

DATA AND PROCESSORS USED Programming Language : C++ with MPI # of Processors : 1-16. 8 cores per processor. (Total 128 cores). Size of data (data type = float): 65536 X 5 65536 X 40 512000 X 10 768000 X 10 8192 X 20 Upper limit = 10, Lower limit = -10 Criterion for termination of program : global_minimum = 0.000001 (OR) max_cycle = 1000 Number of runs for each data set and processor # : 10 Functions used : Sphere : f(x) = Ʃ x i 2 (i = 1 D) Rastringin : f(x) = Ʃ (x i 2-10*cos(2π*x i ) +10 ) --- (i = 1 D)

RAM ALGORITHM Start Initialize parameters Initial solution REPEAT o Find and evaluate solution by Employed bees o Select and update food source by Onlooker bees o Evaluate solution by Onlooker bees o If solution is abandoned, generate new solution by Scout bees UNTIL criteria are met End

PARALLEL ALGORITHM Start Initialize parameters Divide populations into sub-groups for each processor Initial solution REPEAT o Find and evaluate solution by Employed bees o Select and update food source by Onlooker bees o Evaluate solution by Onlooker bees o If solution is abandoned, generate new solution for Scout bees o Exchange information within sub-groups (local worst/best solutions) UNTIL criteria are met End

PARALLEL ALGORITHM 1. For each cycle, Processor 0 generates random pairs and communicates the pairing to the remaining processors (MPI_Send, MPI_Recv) 2. At the end of each cycle, the processors replace the local worst solution with the local best solution obtained from their respective partners. 3. After the desired criteria are met, the processors exchange local best solutions and receive the overall best solution (MPI_Allreduce)

VALUES OBTAINED Time taken for different data sizes and # cores Input data = #Food sources, #Parameters per food source 65536, 40 65536, 5 512000, 10 8192, 20 768000, 10 1 970.23 38.11 448.37 37.56 677.45 2 513.21 19.21 227.46 19.13 344.87 4 269.41 9.94 114.34 9.61 174.15 8 139.84 5.42 59.26 4.98 88.85 16 71.91 2.96 30.32 2.69 45.77 32 37.81 1.59 15.96 1.32 23.06 64 19.83 0.92 8.33 0.83 12.40 128 10.67 0.51 4.62 0.65 6.57

PERFORMANCE Time vs # cores 1000.00 T i m e 100.00 ( s e c o n d s ) 65536, 40 65536, 5 10.00 1.00 0 20 40 60 80 100 120 140 512000, 10 8192, 20 768000, 10 0.10 # Cores

PERFORMANCE - speedup 140.000 120.000 100.000 S p e e d u p 80.000 60.000 40.000 65536, 40 65536, 5 512000, 10 8192, 20 768000, 10 Ideal 20.000 0.000 0 20 40 60 80 100 120 140 # cores

AN ALTERNATIVE PARALLEL APPROACH Best solutions are not exchanged between processors between cycles. After criteria are met, Local best solutions are exchanged between processors and the overall best solution is chosen.

VALUES OBTAINED Time taken for different data sizes and # cores Input data = #Food sources, #Parameters per food source 65536, 40 65536, 5 512000, 10 8192, 20 768000, 10 1.00 970.23 38.11 448.37 37.56 677.45 2.00 506.11 19.83 230.47 19.04 344.03 4.00 263.85 10.51 116.64 9.89 175.59 8.00 138.73 5.89 61.72 5.06 89.67 16.00 69.34 3.05 20.15 2.67 45.65 32.00 35.29 1.61 15.22 1.45 22.89 64.00 18.64 0.89 8.14 0.92 12.08 128.00 9.45 0.48 4.45 0.63 6.26

PERFORMANCE Comparison of both approaches 1000.00 T i m e ( s e c o n d s ) 100.00 10.00 65536, 40 - II 65536, 40 - I 768000, 10 - II 768000, 10 - I 1.00 1.00 10.00 100.00 1000.00 # Cores

OBSERVATIONS / LIMITATIONS Time taken to execute increases based on the number of Food Sources (linear) and number of Parameters per Food Source (non-linear, possibly polynomial). For a given number of processors, speedup increases as the number of parameters. (Increase w.r.t. time in inter-process communication is linear while increase within each processor is non-linear). For a fixed number of food sources, speedup gradually decreases as the number of processors increase, as seen in the speedup of the data set (8192 X 20).

OBSERVATIONS / LIMITATIONS For a lower number of processors, the first parallel approach was found to be (marginally) faster. As the number of processors increases, the alternative approach appears to be (marginally) faster. Less communication is a factor. Beyond a certain number of parameters (eg.20), the output does not converge adequately even after > 1000 cycles

FUTURE GOALS Implement in OpenMP and CUDA Compare performances between MPI, OpenMP and CUDA

REFERENCES Artificial bee colony algorithm on distributed environments (Banharnsakun, A.; Achalakul, T.; Sirinaovakul, B.) http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=5716 309&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2F abs_all.jsp%3farnumber%3d5716309 A powerful and efficient algorithm for numerical function optimization : artificial bee colony (ABC) algorithm (D. Karaboga, B. Basturk) http://www.springerlink.com/content/1x7x45uw7q7w3x35/ A comparative study of Artificial Bee Colony algorithm http://chern.ie.nthu.edu.tw/gen/comparative-study.pdf http://en.wikipedia.org/wiki/artificial_bee_colony_algorithm

QUESTIONS?

THANK YOU