International Journal of Applied Electromagnetics and Mechanics 53 (2017) S249–S259 S249 DOI 10.3233/JAE-140166 IOS Press PSO algorithms and GPGPU technique for electromagnetic problems Anton Duca a,∗ , Laurentiu Duca b , Gabriela Ciuprina a , Asim Egemen Yilmaz c and Tolga Altinoz c a Faculty of Electrical Engineering, Politehnica University of Bucharest, Bucharest, Romania b Faculty of Computer Science, Politehnica University of Bucharest, Bucharest, Romania c Department of Electrical and Electronics Engineering, Ankara University, Ankara, Turkey Abstract. This paper studies the efficiency of the General Purpose Computation on Graphics Processing Units (GPGPU) technique for the implementation of a parallel Particle Swarm Optimization (PSO) algorithm applied for the optimization of electromagnetic field devices. Several sequential PSO algorithms are compared in order to find the optimal configuration of an electromagnetic device, the TEAM22 benchmark electromagnetic problem. The best PSO algorithm is parallelized by using a GPGPU technique using various configurations for kernels and threads per block. Details of the parallel implementations are explained. The sequential and parallel implementations are compared using as criteria the speed up and the solution quality. The most efficient approach turned to be the one with one thread per block, which was up to 4 times faster than a sequential implementation running on hardware architectures with processors much more advanced than the core processors of the GPU. Keywords: PSO, GPGPU, electromagnetic field, optimization, TEAM22 1. Introduction Particle Swarm Optimization (PSO) algorithms belong to the class of stochastic optimization methods which use a population of candidate solutions that evolves in time. They make no assumptions about the problem and thus they are appropriate for difficult optimization problems. PSO was initially proposed by Kennedy and Eberhart [1]. The classic (traditional) PSO algorithm has the roots in biology and is inspired from the social behavior of fish/birds (denoted as particles) inside a fish school/bird flock (the swarm), which evolves in time (iteration). In order to improve the performance of the classic PSO different methods were proposed in the literature [2–4]. As any stochastic optimization methods, PSO are global search zero-order optimization methods, needing a large number of objective function evaluations. This is the main drawback of such methods, especially if the evaluation of the objective function is costly, which happens for real world problems. In such cases the optimization time is significant for sequential implementations. Thus, optimization algorithms are very well suited for parallel implementations, e.g. by using Graphic Processor Units. * Corresponding author: Anton Duca, Faculty of Electrical Engineering, Politehnica University of Bucharest, Bucharest, Romania. E-mail: anton.duca@upb.ro. 1383-5416/17/$35.00 c 2017 – IOS Press and the authors. All rights reserved