| In today’s reality,many engineering and scientific problems can be viewed as optimization problems.However,with the development of big data technology,large-scale complex optimization problems have also emerged.The high computational cost of these problems has led to the trend of parallelization in evolutionary algorithms.Particle swarm optimization(PSO)is a population-based evolutionary algorithm based on swarm intelligence that is easy to understand,implement,and has fast convergence speed with few parameters that need to be adjusted.Currently,it has performed well in solving optimization problems.However,in dealing with high-dimensional and complex optimization problems,the time complexity and effectiveness of PSO algorithm have decreased.To improve its performance,researchers have made numerous attempts at parallel implementation.Due to the inherent parallel nature of PSO’s basic structure,the availability of graphics processing units(GPUs)and compute unified device architecture(CUDA)has made parallel PSO more convenient,making it one of the widely accepted algorithms.However,previous studies have typically only focused on local parallelization of the PSO algorithm,leading to high communication overhead between the CPU and GPU,which has become a problem worth studying.In this paper,we improved the particle swarm optimization algorithm and the multi-objective particle swarm optimization algorithm,and implemented parallelization based on CUDA and GPU platforms.The main research content is as follows:This paper proposes a GPU/CUDA-based parallel particle swarm optimization algorithm(GPU-SPSO)for single-objective optimization problems,which combines coarse-grained and fine-grained parallelism to achieve global parallelism.In addition,a data structure based on CUDA features is designed,and the efficiency of data parallel processing and data access is further improved by using merged memory access.Experimental results show that the algorithm effectively reduces the solution time of particle swarm optimization when solving high-dimensional and large-scale single-objective optimization problems.The speedup ratio increases with the dimension of the objective function,and the speedup ratio of the high-dimensional Ackley function can reach 2000 times.Building on the success of PSO algorithm as a single-objective optimizer,this paper applies it to multi-objective optimization problems and implements a parallelized master-slave mode multi-objective particle swarm optimization algorithm based on GPU/CUDA(GPU-MOPSO).Experimental results show that the proposed algorithm has better performance indicators compared to the multi-objective particle swarm optimization algorithm implemented on CPU platform when solving multi-objective optimization problems.Furthermore,the proposed implementation method still has high performance even when the problem dimension and the number of particles increase,and thus can be widely applied to solving real-world optimization problems. |