GPU-based Parallel Implementation of Swarm Intelligence Algorithms

Book description

GPU-based Parallel Implementation of Swarm Intelligence Algorithms combines and covers two emerging areas attracting increased attention and applications: graphics processing units (GPUs) for general-purpose computing (GPGPU) and swarm intelligence. This book not only presents GPGPU in adequate detail, but also includes guidance on the appropriate implementation of swarm intelligence algorithms on the GPU platform.

GPU-based implementations of several typical swarm intelligence algorithms such as PSO, FWA, GA, DE, and ACO are presented and having described the implementation details including parallel models, implementation considerations as well as performance metrics are discussed. Finally, several typical applications of GPU-based swarm intelligence algorithms are presented. This valuable reference book provides a unique perspective not possible by studying either GPGPU or swarm intelligence alone.

This book gives a complete and whole picture for interested readers and new comers who will find many implementation algorithms in the book suitable for immediate use in their projects. Additionally, some algorithms can also be used as a starting point for further research.

  • Presents a concise but sufficient introduction to general-purpose GPU computing which can help the layman become familiar with this emerging computing technique
  • Describes implementation details, such as parallel models and performance metrics, so readers can easily utilize the techniques to accelerate their algorithmic programs
  • Appeals to readers from the domain of high performance computing (HPC) who will find the relatively young research domain of swarm intelligence very interesting
  • Includes many real-world applications, which can be of great help in deciding whether or not swarm intelligence algorithms or GPGPU is appropriate for the task at hand

Table of contents

  1. Cover image
  2. Title page
  3. Table of Contents
  4. Copyright
  5. Dedication
  6. Preface
  7. Acknowledgments
  8. Acronyms
  9. Chapter 1: Introduction
    1. 1.1 Swarm Intelligence Algorithms (SIAs)
    2. 1.2 Graphics Processing Units (GPUs)
    3. 1.3 SIAs and GPUs
    4. 1.4 Some Perspectives
    5. 1.5 Organization
  10. Chapter 2: GPGPU: General-Purpose Computing on the GPU
    1. 2.1 Introduction
    2. 2.2 GPGPU Development Platforms
    3. 2.3 Compute Unified Device Architecture (CUDA)
    4. 2.4 Open Computing Language (OpenCL)
    5. 2.5 Programming Techniques
    6. 2.6 Some Discussions
    7. 2.7 Summary
  11. Chapter 3: Parallel Models
    1. 3.1 Previous Work
    2. 3.2 Basic Guide for Parallel Programming
    3. 3.3 GPU-Oriented Parallel Models
    4. 3.4 Naïve Parallel Model
    5. 3.5 Multi-Kernel Parallel Model
    6. 3.6 All-GPU Parallel Model
    7. 3.7 Island Parallel Model
    8. 3.8 Summary
  12. Chapter 4: Performance Metrics
    1. 4.1 Parallel Performance Metrics
    2. 4.2 Algorithm Performance Metrics
    3. 4.3 Rectified Efficiency
    4. 4.4 Case Study
    5. 4.5 Summary
  13. Chapter 5: Implementation Considerations
    1. 5.1 Float-Point
    2. 5.2 Memory Accesses
    3. 5.3 Random Number Generation
    4. 5.4 Branch Divergence
    5. 5.5 Occupancy
    6. 5.6 Summary
  14. Chapter 6: GPU-Based Particle Swarm Optimization
    1. 6.1 Introduction
    2. 6.2 Particle Swarm Optimization
    3. 6.3 GPU-Based PSO for Single-Objective Optimization
    4. 6.4 GPU-Based PSO for Multiple-Objective Optimization
    5. 6.5 Remarks
    6. 6.6 Summary
  15. Chapter 7: GPU-Based Fireworks Algorithm
    1. 7.1 Introduction
    2. 7.2 Fireworks Algorithms (FWA)
    3. 7.3 GPU-Based Fireworks Algorithm
    4. 7.4 Summary
  16. Chapter 8: Attract-Repulse Fireworks Algorithm Using Dynamic Parallelism
    1. 8.1 Introduction
    2. 8.2 Attract-Repulse Fireworks Algorithm (AR-FWA)
    3. 8.3 Implementation
    4. 8.4 Experiments and Analysis
    5. 8.5 Summary
  17. Chapter 9: Other Typical Swarm Intelligence Algorithms Based on GPUs
    1. 9.1 GPU-Based Genetic Algorithm
    2. 9.2 GPU-Based Differential Evolution
    3. 9.3 GPU-Based Ant Colony Optimization
    4. 9.4 Summary
  18. Chapter 10: GPU-Based Random Number Generators
    1. 10.1 Introduction
    2. 10.2 Uniform Random Number Generators
    3. 10.3 Random Numbers With Nonuniform Distributions
    4. 10.4 Measurements of Randomness
    5. 10.5 Impact of Random Numbers on Performance of SIAs
    6. 10.6 Summary
  19. Chapter 11: Applications
    1. 11.1 Image Processing
    2. 11.2 Computer Vision
    3. 11.3 Machine Learning
    4. 11.4 Parameter Optimization
    5. 11.5 Miscellaneous
    6. 11.6 Case Study: CUDA-Based PSO for Road Sign Detection
    7. 11.7 Summary
  20. Chapter 12: A CUDA-Based Test Suit
    1. 12.1 Overview
    2. 12.2 Speedup and Baseline Results
    3. 12.3 Unimodal Functions
    4. 12.4 Basic Multimodal Functions
    5. 12.5 Hybrid Functions
    6. 12.6 Composition Functions
    7. 12.7 Summary
    8. Appendix: Figures for 2D Functions
  21. Appendix A: Figures and Tables
    1. List of Figures
    2. List of Tables
  22. Appendix B: Resources
    1. B.1 Internet Resources
    2. B.2 Organizations
    3. B.3 Journals
    4. B.4 Conferences
  23. Appendix C: Table of Symbols
  24. References
  25. Index

Product information

  • Title: GPU-based Parallel Implementation of Swarm Intelligence Algorithms
  • Author(s): Ying Tan
  • Release date: April 2016
  • Publisher(s): Morgan Kaufmann
  • ISBN: 9780128093641