In
computer science
Computer science is the study of computation, information, and automation. Computer science spans Theoretical computer science, theoretical disciplines (such as algorithms, theory of computation, and information theory) to Applied science, ...
and
operations research
Operations research () (U.S. Air Force Specialty Code: Operations Analysis), often shortened to the initialism OR, is a branch of applied mathematics that deals with the development and application of analytical methods to improve management and ...
, a memetic algorithm (MA) is an extension of an
evolutionary algorithm
Evolutionary algorithms (EA) reproduce essential elements of the biological evolution in a computer algorithm in order to solve "difficult" problems, at least Approximation, approximately, for which no exact or satisfactory solution methods are k ...
(EA) that aims to accelerate the evolutionary search for the
optimum. An EA is a
metaheuristic that reproduces the basic principles of
biological evolution
Evolution is the change in the heritable characteristics of biological populations over successive generations. It occurs when evolutionary processes such as natural selection and genetic drift act on genetic variation, resulting in certai ...
as a
computer algorithm
In mathematics and computer science, an algorithm () is a finite sequence of Rigour#Mathematics, mathematically rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algo ...
in order to solve challenging
optimization
Mathematical optimization (alternatively spelled ''optimisation'') or mathematical programming is the selection of a best element, with regard to some criteria, from some set of available alternatives. It is generally divided into two subfiel ...
or
planning
Planning is the process of thinking regarding the activities required to achieve a desired goal. Planning is based on foresight, the fundamental capacity for mental time travel. Some researchers regard the evolution of forethought - the cap ...
tasks, at least
approximately. An MA uses one or more suitable
heuristic
A heuristic or heuristic technique (''problem solving'', '' mental shortcut'', ''rule of thumb'') is any approach to problem solving that employs a pragmatic method that is not fully optimized, perfected, or rationalized, but is nevertheless ...
s or
local search techniques to improve the quality of solutions generated by the EA and to speed up the search. The effects on the
reliability of finding the global optimum depend on both the use case and the
design of the MA.
Memetic algorithms represent one of the recent growing areas of research in
evolutionary computation
Evolutionary computation from computer science is a family of algorithms for global optimization inspired by biological evolution, and the subfield of artificial intelligence and soft computing studying these algorithms. In technical terms ...
. The term MA is now widely used as a synergy of evolutionary or any population-based approach with separate individual learning or local improvement procedures for problem search. Quite often, MAs are also referred to in the literature as Baldwinian evolutionary algorithms, Lamarckian EAs, cultural algorithms, or genetic local search.
Introduction
Inspired by both Darwinian principles of natural evolution and
Dawkins' notion of a
meme
A meme (; ) is an idea, behavior, or style that Mimesis, spreads by means of imitation from person to person within a culture and often carries symbolic meaning representing a particular phenomenon or theme. A meme acts as a unit for carrying c ...
, the term ''memetic algorithm'' (MA) was introduced by
Pablo Moscato in his technical report
in 1989 where he viewed MA as being close to a form of population-based hybrid
genetic algorithm
In computer science and operations research, a genetic algorithm (GA) is a metaheuristic inspired by the process of natural selection that belongs to the larger class of evolutionary algorithms (EA). Genetic algorithms are commonly used to g ...
(GA) coupled with an individual learning procedure capable of performing local refinements. The metaphorical parallels, on the one hand, to Darwinian evolution and, on the other hand, between memes and domain specific (local search)
heuristic
A heuristic or heuristic technique (''problem solving'', '' mental shortcut'', ''rule of thumb'') is any approach to problem solving that employs a pragmatic method that is not fully optimized, perfected, or rationalized, but is nevertheless ...
s are captured within memetic algorithms thus rendering a methodology that balances well between generality and problem specificity. This two-stage nature makes them a special case of
dual-phase evolution.
In the context of complex optimization, many different instantiations of memetic algorithms have been reported across a wide range of
application domains, in general, converging to high-quality solutions more efficiently than their conventional evolutionary counterparts.
In general, using the ideas of memetics within a computational framework is called ''
memetic computing'' or ''memetic computation'' (MC).
With MC, the traits of universal Darwinism are more appropriately captured. Viewed in this perspective, MA is a more constrained notion of MC. More specifically, MA covers one area of MC, in particular dealing with areas of evolutionary algorithms that marry other deterministic refinement techniques for solving optimization problems. MC extends the notion of memes to cover conceptual entities of knowledge-enhanced procedures or representations.
Theoretical Background
The
no-free-lunch theorems of optimization and search state that all optimization strategies are equally effective with respect to the set of all optimization problems. Conversely, this means that one can expect the following: The more efficiently an algorithm solves a problem or class of problems, the less general it is and the more problem-specific knowledge it builds on. This insight leads directly to the recommendation to complement generally applicable metaheuristics with application-specific methods or heuristics, which fits well with the concept of MAs.
The development of MAs
1st generation
Pablo Moscato characterized an MA as follows: "''Memetic algorithms are a marriage between a population-based global search and the heuristic local search made by each of the individuals. ... The mechanisms to do local search can be to reach a local optimum or to improve (regarding the objective cost function) up to a predetermined level.''" And he emphasizes "''I am not constraining an MA to a genetic representation.''". This original definition of MA although encompasses characteristics of cultural evolution (in the form of local refinement) in the search cycle, it may not qualify as a true evolving system according to
universal Darwinism, since all the core principles of inheritance/memetic transmission, variation, and selection are missing. This suggests why the term MA stirred up criticisms and controversies among researchers when first introduced.
The following pseudo code would correspond to this general definition of an MA:
;Pseudo code:
Procedure Memetic Algorithm
Initialize: Generate an initial population, evaluate the individuals and assign a quality value to them;
while Stopping conditions are not satisfied do
''Evolve'' a new population using stochastic search operators.
''Evaluate'' all individuals in the population and assign a quality value to them.
, that should undergo the individual improvement procedure.
''Perform'' individual learning using meme(s) ,
''Proceed'' with Lamarckian or Baldwinian learning.
end for
end while
Lamarckian learning in this context means to update the chromosome according to the improved solution found by the individual learning step, while
Baldwinian learning leaves the chromosome unchanged and uses only the improved
fitness. This pseudo code leaves open which steps are based on the fitness of the individuals and which are not. In question are the evolving of the new population and the selection of
.
Since most MA implementations are based on EAs, the pseudo code of a corresponding representative of the first generation is also given here, following Krasnogor:
; Pseudo code
Procedure Memetic Algorithm Based on an EA
''Initialization:''
; // Initialization of the generation counter
Randomly generate an initial population
;
Compute the fitness
;
while Stopping conditions are not satisfied do
;
if Lamarckian learning then
fi
''New generation:''
; // Increment the generation counter
end while
''Return'' best individual
as result;
There are some alternatives for this MA scheme. For example:
* All or some of the initial individuals may be improved by the meme(s).
* The parents may be locally improved instead of the offspring.
* Instead of all offspring, only a randomly selected or fitness-dependent fraction may undergo local improvement. The latter requires the evaluation of the offspring in
prior to the ''Learning'' step.
2nd generation
Multi-meme,
[
] hyper-heuristic and meta-Lamarckian MA
are referred to as second generation MA exhibiting the principles of memetic transmission and selection in their design. In Multi-meme MA, the memetic material is encoded as part of the
genotype
The genotype of an organism is its complete set of genetic material. Genotype can also be used to refer to the alleles or variants an individual carries in a particular gene or genetic location. The number of alleles an individual can have in a ...
. Subsequently, the decoded meme of each respective individual/
chromosome
A chromosome is a package of DNA containing part or all of the genetic material of an organism. In most chromosomes, the very long thin DNA fibers are coated with nucleosome-forming packaging proteins; in eukaryotic cells, the most import ...
is then used to perform a local refinement. The memetic material is then transmitted through a simple inheritance mechanism from parent to offspring(s). On the other hand, in hyper-heuristic and meta-Lamarckian MA, the pool
of candidate memes considered will compete, based on their past merits in generating local improvements through a reward mechanism, deciding on which meme to be selected to proceed for future local refinements. Memes with a higher reward have a greater chance of continuing to be used. For a review on second generation MA; i.e., MA considering multiple individual learning methods within an evolutionary system, the reader is referred to.
3rd generation
Co-evolution
and self-generating MAs
may be regarded as 3rd generation MA where all three principles satisfying the definitions of a basic evolving system have been considered. In contrast to 2nd generation MA which assumes that the memes to be used are known a priori, 3rd generation MA utilizes a rule-based local search to supplement candidate solutions within the evolutionary system, thus capturing regularly repeated features or patterns in the problem space.
Some design notes
The learning method/meme used has a significant impact on the improvement results, so care must be taken in deciding which meme or memes to use for a particular optimization problem.
The frequency and intensity of individual learning directly define the degree of evolution (exploration) against individual learning (exploitation) in the MA search, for a given fixed limited computational budget. Clearly, a more intense individual learning provides greater chance of convergence to the local optima but limits the amount of evolution that may be expended without incurring excessive computational resources. Therefore, care should be taken when setting these two parameters to balance the computational budget available in achieving maximum search performance. When only a portion of the population individuals undergo learning, the issue of which subset of individuals to improve need to be considered to maximize the utility of MA search. Last but not least, it has to be decided whether the respective individual should be changed by the learning success (Lamarckian learning) or not (Baldwinian learning). Thus, the following five design questions
must be answered, the first of which is addressed by all of the above 2nd generation representatives during an MA run, while the extended form of meta-Lamarckian learning of
expands this to the first four design decisions.
Selection of an individual learning method or meme to be used for a particular problem or individual
In the context of continuous optimization, individual learning exists in the form of local heuristics or conventional exact enumerative methods.
Examples of individual learning strategies include the
hill climbing
numerical analysis, hill climbing is a mathematical optimization technique which belongs to the family of local search.
It is an iterative algorithm that starts with an arbitrary solution to a problem, then attempts to find a better soluti ...
, Simplex method, Newton/Quasi-Newton method,
interior point methods,
conjugate gradient method, line search, and other local heuristics. Note that most of the common individual learning methods are deterministic.
In combinatorial optimization, on the other hand, individual learning methods commonly exist in the form of heuristics (which can be deterministic or stochastic) that are tailored to a specific problem of interest. Typical heuristic procedures and schemes include the k-gene exchange, edge exchange, first-improvement, and many others.
Determination of the individual learning frequency
One of the first issues pertinent to memetic algorithm design is to consider how often the individual learning should be applied; i.e., individual learning frequency. In one case,
the effect of individual learning frequency on MA search performance was considered where various configurations of the individual learning frequency at different stages of the MA search were investigated. Conversely, it was shown elsewhere
that it may be worthwhile to apply individual learning on every individual if the computational complexity of the individual learning is relatively low.
Selection of the individuals to which individual learning is applied
On the issue of selecting appropriate individuals among the EA population that should undergo individual learning, fitness-based and distribution-based strategies were studied for adapting the probability of applying individual learning on the population of chromosomes in continuous parametric search problems with Land
extending the work to
combinatorial optimization
Combinatorial optimization is a subfield of mathematical optimization that consists of finding an optimal object from a finite set of objects, where the set of feasible solutions is discrete or can be reduced to a discrete set. Typical combina ...
problems. Bambha et al. introduced a simulated heating technique for systematically integrating parameterized individual learning into evolutionary algorithms to achieve maximum solution quality.
Specification of the intensity of individual learning
Individual learning intensity,
, is the amount of computational budget allocated to an iteration of individual learning; i.e., the maximum computational budget allowable for individual learning to expend on improving a single solution.
Choice of Lamarckian or Baldwinian learning
It is to be decided whether a found improvement is to work only by the better fitness (Baldwinian learning) or whether also the individual is adapted accordingly (lamarckian learning). In the case of an EA, this would mean an adjustment of the genotype. This question has been controversially discussed for EAs in the literature already in the 1990s, stating that the specific use case plays a major role. The background of the debate is that genome adaptation may promote
premature convergence
Premature convergence is an unwanted effect in evolutionary algorithms (EA), a metaheuristic that mimics the basic principles of biological evolution as a computer algorithm for solving an optimization problem. The effect means that the population ...
. This risk can be effectively mitigated by other measures to better balance breadth and depth searches, such as the use of
structured populations.
Applications
Memetic algorithms have been successfully applied to a multitude of real-world problems. Although many people employ techniques closely related to memetic algorithms, alternative names such as ''hybrid genetic algorithms'' are also employed.
Researchers have used memetic algorithms to tackle many classical
NP problems. To cite some of them:
graph partition
In mathematics, a graph partition is the reduction of a Graph (discrete mathematics), graph to a smaller graph by partition of a set, partitioning its set of nodes into mutually exclusive groups. Edges of the original graph that cross between the g ...
ing,
multidimensional knapsack,
travelling salesman problem
In the Computational complexity theory, theory of computational complexity, the travelling salesman problem (TSP) asks the following question: "Given a list of cities and the distances between each pair of cities, what is the shortest possible ...
,
quadratic assignment problem,
set cover problem
The set cover problem is a classical question in combinatorics, computer science, operations research, and complexity theory.
Given a set of elements (henceforth referred to as the universe, specifying all possible elements under considerati ...
,
minimal graph coloring,
max independent set problem,
bin packing problem
The bin packing problem is an optimization problem, in which items of different sizes must be packed into a finite number of bins or containers, each of a fixed given capacity, in a way that minimizes the number of bins used. The problem has m ...
, and
generalized assignment problem
In applied mathematics, the maximum generalized assignment problem is a problem in combinatorial optimization. This problem is a generalization of the assignment problem in which both tasks and agents have a size. Moreover, the size of each tas ...
.
More recent applications include (but are not limited to)
business analytics and
data science
Data science is an interdisciplinary academic field that uses statistics, scientific computing, scientific methods, processing, scientific visualization, algorithms and systems to extract or extrapolate knowledge from potentially noisy, stru ...
,
[ ] training of
artificial neural network
In machine learning, a neural network (also artificial neural network or neural net, abbreviated ANN or NN) is a computational model inspired by the structure and functions of biological neural networks.
A neural network consists of connected ...
s,
pattern recognition
Pattern recognition is the task of assigning a class to an observation based on patterns extracted from data. While similar, pattern recognition (PR) is not to be confused with pattern machines (PM) which may possess PR capabilities but their p ...
,
robotic
motion planning
Motion planning, also path planning (also known as the navigation problem or the piano mover's problem) is a computational problem to find a sequence of valid configurations that moves the object from the source to destination. The term is used ...
,
beam orientation,
circuit design
In electrical engineering, the process of circuit design can cover systems ranging from complex electronic systems down to the individual transistors within an integrated circuit. One person can often do the design process without needing a pl ...
,
electric service restoration,
medical
expert system
In artificial intelligence (AI), an expert system is a computer system emulating the decision-making ability of a human expert.
Expert systems are designed to solve complex problems by reasoning through bodies of knowledge, represented mainly as ...
s,
single machine scheduling,
automatic timetabling (notably, the timetable for the
NHL
The National Hockey League (NHL; , ''LNH'') is a professional ice hockey league in North America composed of 32 teams25 in the United States and 7 in Canada. The NHL is one of the major professional sports leagues in the United States and Cana ...
),
manpower scheduling,
nurse rostering optimisation,
processor allocation,
maintenance scheduling (for example, of an electric distribution network),
scheduling of multiple
workflows
Workflow is a generic term for orchestrated and repeatable patterns of activity, enabled by the systematic organization of resources into processes that transform materials, provide services, or process information. It can be depicted as a sequen ...
to constrained heterogeneous resources, multidimensional knapsack problem,
VLSI design,
clustering of
gene expression profiles,
feature/gene selection,
parameter determination for hardware fault injection, and multi-class, multi-objective
feature selection
In machine learning, feature selection is the process of selecting a subset of relevant Feature (machine learning), features (variables, predictors) for use in model construction. Feature selection techniques are used for several reasons:
* sim ...
.
Recent activities in memetic algorithms
*IEEE Workshop on Memetic Algorithms (WOMA 2009). Program Chairs: Jim Smith, University of the West of England, U.K.; Yew-Soon Ong, Nanyang Technological University, Singapore; Gustafson Steven, University of Nottingham; U.K.; Meng Hiot Lim, Nanyang Technological University, Singapore; Natalio Krasnogor, University of Nottingham, U.K.
Memetic Computing Journal first issue appeared in January 2009.
2008 IEEE World Congress on Computational Intelligence (WCCI 2008) Hong Kong
, Soft Computing Journal, Completed & In Press, 2008.
*
ttps://web.archive.org/web/20100306001555/http://cec2007.nus.edu.sg/ IEEE Congress on Evolutionary Computation (CEC 2007) Singapore
Special Session on Memetic Algorithms
by Thomson Scientific's Essential Science Indicators as an Emerging Front Research Area.
Special Issue on Memetic Algorithms IEEE Transactions on Systems, Man, and Cybernetics - Part B: Cybernetics, Vol. 37, No. 1, February 2007.
Series: Studies in Fuzziness and Soft Computing, Vol. 166, , 2005.
Special Issue on Memetic Algorithms Evolutionary Computation Fall 2004, Vol. 12, No. 3: v-vi.
References
{{reflist, 30em
Evolutionary algorithms