Parallelization of an evolving Artificial Neural Networks system to Forecast Time Series using OPENMP and MPI
Borja Prior Gonzalez, Germán Gutiérrez, Juan Peralta Donate, Paulo Cortez, Araceli Sanchis · 2012
Time Series Forecasting (TSF) is a key tool to support decision making, for instance by producing better estimates to be used when planning production resources. Artificial Neural Networks (ANN) are innate candidates for TSF due to advantages such as nonlinear learning and noise tolerance. The search for the best ANN is a complex task that strongly affects the forecasting performance while often requiring a high computational time. However, obtaining fast predictions is a relevant issue in several real-world scenarios, such as real-time and control systems. In this work, we present an Evolutionary (EANN) approach for TSF based on Estimation Distribution Algorithm (EDA) that evolves fully connected Artificial Neural Network (EANN). To speed up such approach, we propose the use of two parallel programming standards: Message Passing Interface (MPI) and Open Multi-Processing (OpenMP). Several experiments were held, using five real-world time series with different characteristics and from distinct domains, in order to compare with sequential EANN approach with the MPI and OpenMP parallel variants, under a number of cores that ranged from 1 to 6. Overall, the EANN results are competitive when compared with the popular ForecastPro tool. Moreover, the setup that included the MPI parallelization method and the use of 5 cores lead to the lowest execution times, while making a reasonable use of the available computational resources.