A Survey: Genetic Algorithms and the Fast Evolving World of Parallel
Computing
Asim Munawar, Mohamed Wahib
Grad. School of Info. Science & Tech.
Hokkaido University, Sapporo, Japan
{asim,wahibium}@uva.cims.hokudai.ac.jp
Masaharu Munetomo, Kiyoshi Akama
Information Initiative Center
Hokkaido University, Sapporo, Japan
{munetomo,akama}@iic.hokudai.ac.jp
Abstract
This paper gives a survey about the impact of mod-
ern parallel/distributed computing paradigms over Paral-
lel Genetic Algorithms (PGAs). Helping the GA commu-
nity to feel more comfortable with the evolving parallel
paradigms, and marking some areas of research for the
High-Performance Computing (HPC) community is the ma-
jor inspiration behind this survey. In the modern parallel
computing paradigms we have considered only two major
areas that have evolved very quickly during the past few
years, namely, multicore computing and Grid computing.
We discuss the challenges involved, and give potential solu-
tions for these challenges. We also propose a hierarchical
PGA suitable for Grid environment with multicore compu-
tational resources.
1 Introduction
A Genetic Algorithm (GA) is a search technique used
to find exact or approximate solutions to optimization and
search problems. GAs are categorized as global search
heuristics. They are a particular class of Evolutionary Al-
gorithms (EAs) that use techniques inspired by evolution-
ary biology such as inheritance, mutation, selection, and
crossover. GAs construct a population of probable solutions
and evolve it over the generations to find a better individual
that is close to the optimal solution.
GAs usually require a bigger population for solving non-
trivial problems, this leads to higher computational cost [3].
Parallel GAs (PGAs) is a technique used to reduce this com-
putational cost. As GAs mimic the process of natural evo-
lution. In nature the individuals do not operate as a single
population in which a given individual can mate with any
other partner in the population. Rather, species live in and
reproduce within subgroups or neighbors only. PGA intro-
duces this concept of interconnected sub populations in arti-
ficial evolution[2]. As a result, PGAs often lead to superior
numerical performance (not only to faster algorithms), even
when executed in a single processor environment[10].
Even though, GAs have a tremendous potential for par-
allelization, but up to the present time it is a very common
practice to implement GAs in a serial fashion for medium
complexity problems. This trend prevailed due to a con-
tinuous increase in clock speeds over the last two decades
but, as rising clock speeds mean rise in power consumption,
in this decade multicore technology with low clock speeds
is becoming more prominent. Multicore strategy helps to
achieve high performance with low clock speeds, resulting
in low power consumption. Other trends that are clearly
visible during this decade include:
1. Distributed Computing: Distributed computing allows
the use of resources distributed at global distances. We
will only concentrate on the most distributed form of
computing called Grid computing. Grid allows se-
cure and coordinated sharing of globally distributed re-
sources spanning several physical organizations [7].
2. Data Deluge: Moore’s Law also applies to the sensors,
therefore amount of data is also increasing at same rate
as the increase in computer’s performance. This phe-
nomenon leads to a flood of data or “data deluge”[9].
All these changes make parallel and distributed algo-
rithms more vital than ever before, and require us to rethink
GA design and simulation strategies. We believe that with
all its advantages, modern parallel computing paradigms
bring complexity in the algorithm/simulation design (see
Sect. 3), therefore, designers and programmers are reluc-
tant to embrace the inevitable change in parallel computing
paradigms. To bring this trend to an end is the basic inspi-
ration behind this paper. We want the algorithm developers
to feel more comfortable with the new parallel paradigms,
at the same time we want to encourage the development of
tools that can make this transition as smooth as possible for
the application developers.
The 10th IEEE International Conference on High Performance Computing and Communications
978-0-7695-3352-0/08 $25.00 © 2008 IEEE
DOI 10.1109/HPCC.2008.77
897
The 10th IEEE International Conference on High Performance Computing and Communications
978-0-7695-3352-0/08 $25.00 © 2008 IEEE
DOI 10.1109/HPCC.2008.77
897
The 10th IEEE International Conference on High Performance Computing and Communications
978-0-7695-3352-0/08 $25.00 © 2008 IEEE
DOI 10.1109/HPCC.2008.77
897