z-logo
open-access-imgOpen Access
Improving the Performance of Whale Optimization Algorithm through OpenCL-Based FPGA Accelerator
Author(s) -
Qiangqiang Jiang,
Yuanjun Guo,
Zhile Yang,
Wei Zheng,
Dongsheng Yang,
Xianyu Zhou
Publication year - 2020
Publication title -
complexity
Language(s) - English
Resource type - Journals
SCImago Journal Rank - 0.447
H-Index - 61
eISSN - 1099-0526
pISSN - 1076-2787
DOI - 10.1155/2020/8810759
Subject(s) - computer science , benchmark (surveying) , field programmable gate array , parallel computing , particle swarm optimization , algorithm , embedded system , geodesy , geography
Whale optimization algorithm (WOA), known as a novel nature-inspired swarm optimization algorithm, demonstrates superiority in handling global continuous optimization problems. However, its performance deteriorates when applied to large-scale complex problems due to rapidly increasing execution time required for huge computational tasks. Based on interactions within the population, WOA is naturally amenable to parallelism, prompting an effective approach to mitigate the drawbacks of sequential WOA. In this paper, field programmable gate array (FPGA) is used as an accelerator, of which the high-level synthesis utilizes open computing language (OpenCL) as a general programming paradigm for heterogeneous System-on-Chip. With above platform, a novel parallel framework of WOA named PWOA is presented. The proposed framework comprises two feasible parallel models called partial parallel and all-FPGA parallel, respectively. Experiments are conducted by performing WOA on CPU and PWOA on OpenCL-based FPGA heterogeneous platform, to solve ten well-known benchmark functions. Meanwhile, other two classic algorithms including particle swarm optimization (PSO) and competitive swarm optimizer (CSO) are adopted for comparison. Numerical results show that the proposed approach achieves a promising computational performance coupled with efficient optimization on relatively large-scale complex problems.

The content you want is available to Zendy users.

Already have an account? Click here to sign in.
Having issues? You can contact us here