Comparing Spark with MapReduce: Glowworm Swarm Optimization Applied to Multimodal Functions

Comparing Spark with MapReduce: Glowworm Swarm Optimization Applied to Multimodal Functions

Goutham Miryala (North Dakota State University, Fargo, USA) and Simone A. Ludwig (Department of Computer Science, North Dakota State University, Fargo, USA)
Copyright: © 2018 |Pages: 22
DOI: 10.4018/IJSIR.2018070101

Abstract

Glowworm swarm optimization (GSO) is one of the optimization techniques, which need to be parallelized in order to evaluate large problems with high-dimensional function spaces. There are various issues involved in the parallelization of any algorithm such as efficient communication among nodes in a cluster, load balancing, automatic node failure recovery, and scalability of nodes at runtime. In this article, the authors have implemented the GSO algorithm with the Apache Spark framework. Even though we need to address how to distribute the data in the cluster to improve the efficiency of algorithm, the Spark framework is designed in such a way that one does not need to deal with any actual underlying parallelization details. For the experimentation, two multimodal benchmark functions were used to evaluate the Spark-GSO algorithm with various sizes of dimensionality. The authors evaluate the optimization results of the two evaluation functions as well as they will compare the Spark results with the ones obtained using a previously implemented MapReduce-based GSO algorithm.
Article Preview

1. Introduction

Optimization is a process whereby the best possible solution to a particular problem is being sought. Thinking in terms of function optimization, one is usually interested in finding the minimum or maximum value of a particular function. There a many different kinds of optimization algorithms and one subgroup belongs to the stochastic algorithms, namely nature-inspired algorithms. Nature-inspired algorithms are algorithms that are inspired by natural processes such as evolution or swarming behavior. Within the nature-inspired algorithm category there are two, namely evolutionary algorithm and swarm intelligence approaches (Engelbrecht, 2007). Evolutionary algorithms take inspirations of processes in nature such as natural selection, crossover and mutation. Examples of evolutionary algorithms are genetic algorithm, evolutionary strategy, genetic programming, etc. (Eiben, 1994).

Swarm intelligence methods’ core concept is that interacting swarm members are exchanging information to achieve a particular goal, which then is used to find the optimum value of a particular problem. Particle swarm optimization is one of the swarm intelligence methodologies whereby the concept of finding food sources based on the birds’ current movement, the flocks’ best food source ever found, and an individual bird in the flock experiencing the best food source is used. In ant colony optimization, the actions of ants performed for example during the process of finding the shortest path is applied (Stützle, 2009). In particular, the ants’ indirect communication ability such as secreting pheromone on various paths is used in the algorithm. Another example of a swarm optimization algorithm is the bee colony optimization algorithm (Wong, Low, & Chong, 2008). In bee colony optimization, the concept of using local and global searching honeybees to build honeybee colonies is applied.

Yet another swarm intelligence algorithm, inspired by the characteristics shown by glowworms, called Glowworm Swarm Optimization (GSO) (Krishnanand & Ghose, 2009a), has been introduced. To mimic goals such as attracting a mate during the breeding season, the glowworms govern the emission of light. Application areas of GSO are for example, hazard sensing in ubiquitous environments (Krishnanand & Ghose, 2008), robotics and portable sensor networks (Krishnanand & Ghose, 2005), and data clustering (Aljarah & Ludwig, 2013b). All these applications can make use of the GSO algorithm due to its simplicity and small number of parameters that are required for tuning (Krishnanand & Ghose, 2009a) (Krishnanand & Ghose, 2008) (Krishnanand & Ghose, 2005).

GSO has been applied to many different application areas, however, one area that GSO is well suited for are multi-modal function optimization (Barrera & Coello, 2009). The aim of multi-modal function optimization is to find all maxima (peaks) or minima (valleys) given some constraints. However, one problem multi-modal function optimization suffers from is the relatively long runtime of the algorithm when searching for the peaks/valleys. In particular, the running time of the algorithm is significantly increased when the peak count is increased for higher dimensional spaces. The count of swarm members is also increased in order to have a better chance to find all the peaks or valleys in higher dimensional spaces. One approach to speed up the processing is to divide the search into several groups as to carry out the optimization process. Thus, a parallelized solution is required to achieve the optimization task in a feasible amount of time.

One solution that has been implemented using the MapReduce framework was proposed in (Aljarah & Ludwig, 2013b). The benefit of the MapReduce framework is that no knowledge of parallel programming is required to implement the parallelization. A conceptual understanding of MapReduce allows one to program a parallel implementation. Besides that, the MapReduce framework comes with built-in fault-tolerance, load balancing, and data locality.

Complete Article List

Search this Journal:
Reset
Open Access Articles: Forthcoming
Volume 10: 4 Issues (2019): Forthcoming, Available for Pre-Order
Volume 9: 4 Issues (2018)
Volume 8: 4 Issues (2017)
Volume 7: 4 Issues (2016)
Volume 6: 4 Issues (2015)
Volume 5: 4 Issues (2014)
Volume 4: 4 Issues (2013)
Volume 3: 4 Issues (2012)
Volume 2: 4 Issues (2011)
Volume 1: 4 Issues (2010)
View Complete Journal Contents Listing