Genetic Algorithms in Computer Aided Design
Genetic Algorithms in Computer Aided Design
net/publication/235707728
CITATIONS READS
307 379
2 authors:
Some of the authors of this publication are also working on these related projects:
INdividual Vascular SignaTure (INVeST): A new machine learning tool to aid personalised
management of risk for cardiovascular disease View project
All content following this page was uploaded by A. Ekárt on 14 April 2016.
The user has requested enhancement of the downloaded file. All in-text references underlined in blue are added to the original document
and are linked to publications on ResearchGate, letting you access and read them immediately.
Computer-Aided Design 35 (2003) 709–726
www.elsevier.com/locate/cad
Abstract
Design is a complex engineering activity, in which computers are more and more involved. The design task can often be seen as an
optimization problem in which the parameters or the structure describing the best quality design are sought.
Genetic algorithms constitute a class of search algorithms especially suited to solving complex optimization problems. In addition to
parameter optimization, genetic algorithms are also suggested for solving problems in creative design, such as combining components in a
novel, creative way.
Genetic algorithms transpose the notions of evolution in Nature to computers and imitate natural evolution. Basically, they find solution(s)
to a problem by maintaining a population of possible solutions according to the ‘survival of the fittest’ principle. We present here the main
features of genetic algorithms and several ways in which they can solve difficult design problems. We briefly introduce the basic notions of
genetic algorithms, namely, representation, genetic operators, fitness evaluation, and selection. We discuss several advanced genetic
algorithms that have proved to be efficient in solving difficult design problems. We then give an overview of applications of genetic
algorithms to different domains of engineering design.
q 2003 Elsevier Science Ltd. All rights reserved.
Keywords: CAD; Genetic algorithms; Optimization; Geometric design; Conceptual design; Mechanism design
that corresponds to some criteria, a two or three dimensional domain knowledge related to the given problem. In a
representation is often much more successful. representation consisting of numerical values, the so-called
In other cases, variable length representations may be arithmetic crossover generates offspring as a component-
chosen, when the genetic algorithm finds the appropriate wise linear combination of the parents.
length of the chromosome and its content at the same time. In later phases of evolution it is more desirable to keep fit
A general experience is that incorporating knowledge individuals intact, so it is a good idea to use an adaptively
specific to the problem domain into the representation helps changing crossover rate: higher rates in early phases and a
to guide the evolutionary process towards good solutions. lower rate at the end of the genetic algorithm. Sometimes it
However, there is no exact recipe for choosing the right is also helpful to use several different types of crossover at
representation for each problem. One always has to make a different stages of evolution.
trade-off. On one hand, with simple representations, the Mutation. A new individual is created by making
genetic algorithm might spend too much time exploring modifications to one selected individual. The modifications
irrelevant regions of the search space. On the other hand, can consist of changing one or more values in the
when incorporating too much domain knowledge, the representation or in adding/deleting parts of the represen-
resulting offspring might get too far from their parents tation. In genetic algorithms mutation is a source of
without ever reaching equilibrium (see Section 2.6). variability, and is applied in addition to crossover and
reproduction.
2.3. Genetic operators At different stages of evolution, one may use different
mutation operators. At the beginning mutation operators
In each generation, the genetic operators are applied to resulting in bigger jumps in the search space might be
selected individuals from the current population in order to preferred. Later on, when the solution is close by, a mutation
create a new population. Generally, the three main genetic operator leading to slighter shifts in the search space could
operators of reproduction, crossover and mutation are be favored.
employed. By using different probabilities for applying
these operators, the speed of convergence can be controlled. 2.4. Fitness assignment
Crossover and mutation operators must be carefully
designed, since their choice highly contributes to the The probability of survival of any individual is
performance of the whole genetic algorithm. determined by its fitness: through evolution the fitter
Reproduction. A part of the new population can be individuals overtake the less fit ones. In order to evolve
created by simply copying without change selected good solutions, the fitness assigned to a solution must
individuals from the present population. This gives the directly reflect its ‘goodness’, i.e. the fitness function must
possibility of survival for already developed fit solutions. indicate how well a solution fulfills the requirements of the
Crossover. New individuals are generally created as given problem.
offspring of two parents (as such, crossover being a binary Fitness assignment can be performed in several different
operator). One or more so-called crossover points are ways:
selected (usually at random) within the chromosome of each
parent, at the same place in each. The parts delimited by the † We define a fitness function and incorporate it in the
crossover points are then interchanged between the parents, genetic algorithm. When evaluating any individual, this
as shown in Fig. 2. The individuals resulting in this way are fitness function is computed for the individual.
the offspring. Beyond one point and multiple point † Fitness evaluation is performed by dedicated separate
crossover, there exist more sophisticated crossover types. analysis software. In such cases evaluation can be time-
The so-called knowledge-augmented crossover operator consuming, thus slowing down the whole evolutionary
constructs offspring from the parents by making use of algorithm.
† Sometimes there is no explicit fitness function, but a containing the individuals that satisfy all the constraints) is
human evaluator assigns a fitness value to the solutions convex and reasonably large. However, if the initial
presented to him/her. population consists of infeasible individuals only, they
† Fitness can be assigned by comparing the individuals in could be repaired instead of being rejected. Repair of
the current population. For example, if the problem is infeasible individuals in a population is a popular approach,
about game-playing, and a solution corresponds to a especially in the case of problems where it is relatively easy
game-playing strategy, its fitness depends on the to repair an infeasible individual. The disadvantage of this
number of other solutions in the population that are method is that for each problem a specific repair algorithm
defeated by it. must be devised. Meanwhile, evaluation can be tuned in
such a way that individuals slightly violating the constraints
2.5. Selection methods are still accepted.
A frequently applied technique for handling constraints
Only selected individuals of a population are allowed to is to introduce a penalty into the fitness function. Individuals
have offspring. Selection is based on fitness: individuals that do not fulfill the constraints are given penalties that
with better fitness values are picked more frequently than depend on the extent of violating the constraints. Selection
individuals with worse fitness values. We present here the is based on a weighted sum of fitness and penalty. Thus, the
most commonly used selection schemes. infeasible individuals participate in the genetic process, as
Fitness-proportional selection. When using this selection they are still considered capable of delivering useful
method, a solution has a probability of selection directly offspring. However, careful adjustment of the penalty
proportional to its fitness. The mechanism that allows fitness weight is needed. If the penalty weight is too low, ‘very’
proportional selection is similar to a roulette wheel that is infeasible individuals could be preferred to slightly less fit
partitioned into slices. Each individual has a share directly
but much more feasible individuals. On the other hand,
proportional to its fitness. When the roulette wheel is
application of high penalty weight may push promising
rotated, an individual has a chance of being selected
individuals out of the population, and the process may
corresponding to its share.
converge to feasible but unfit individuals. There is a general
Ranked selection. The problem of fitness-proportional
view that GAs with variable penalty weights work better
selection is that it is directly based on fitness. In most cases,
than GAs with a fixed penalty weight. For instance, in many
we cannot define an accurate measure of goodness of a
cases a good strategy is to start with relaxed constraints, i.e.
solution, so the assigned fitness value does not express
low penalty weights, and then continue with strengthened
exactly the quality of a solution. Still, an individual with
constraints, i.e. higher penalty weights, as the GA proceeds,
better fitness value is a better individual. In rank based
selection, the individuals are ordered according to their thus ensuring a path to promising solutions.
fitness. The individuals are then selected with a probability A more reliable approach is to incorporate all constraints
based on some linear function of their rank. into the genetic representation, i.e. to devise a representation
Tournament selection. In tournament selection, a set of n which does not allow any individual to violate any
individuals are chosen from the population at random. Then constraints. While in the case of simple constraints this
the best of the pool is selected. For n ¼ 1, the method is may work, for more complex cases it may be very tricky or
equivalent to random selection. The higher is the value of n, impossible. Additionally, incorporating too much problem
the more directed the selection is towards better individuals. specific knowledge into the representation largely limits the
size of the search space and may require the careful
2.6. Constraints in GAs definition of specific crossover and mutation operators.
according to how close they are to other individuals in the can be seen as the transformation of the specifications into
population. The fitness of each individual is worsened by its design descriptions. The design description must contain
neighbors in the search space: the more and the closer sufficient information (numerical, graphical, symbolic) for
neighbors an individual has, the worse its fitness becomes. manufacturing the product. Functionality and manufactur-
As a result, the population does not converge as a whole, but ability impose constraints on the structure and parameters of
convergence takes place within neighborhoods of the the product. Thus, design—as an intelligent activity—can
optima—the so-called niches. be characterized as a goal oriented, constrained, decision
The notion of species was defined for GAs: similar making process [34]. Engineering design typically involves
individuals form a species, and the technique of implement- exploration and learning. While exploration is needed to
ing species is called speciation. When mating can take place identify what kinds of structures and variables are appro-
only between individuals of the same species and is priate to fulfill the requirements, learning attempts to use
disallowed for individuals of different species, the specia- experience gained from previous design processes and from
tion method is mating restriction [27,57]. emerging solutions.
Using parallel (even simulated) GAs is another possi- A considerable effort has been made to model the design
bility for maintaining diversity, more precisely for finding process [47]. Although the basic aim is to provide a solid
multiple solutions. The use of several independent sub- basis for building computer programs to automatize—or at
populations increases the chances of finding several least assist—the design process, modeling has contributed
different optima. Migration between subpopulations helps to a better understanding of what design is.
diversity maintenance during the run. The information flow model [3] concentrates on
communication of information and data during design in
2.8. Other evolutionary algorithms sequential stages with fixed feedback. The model reflects
the organization of activities required to solve a design task,
Genetic algorithms constitute the most popular but says almost nothing about the role of knowledge used in
method—having the greatest number of applications—of design. In spite of the apparent simplification, this model is
evolutionary computation. Here we give only brief defi- currently used for building CAD systems, and for integrat-
nitions of other evolutionary methods, whose detailed ing them with CAPP and CAM systems.
comparative description and fields of application can be The cognitive model tries to describe reasoning, inten-
found in Refs. [4,8]. tions, problem solving and decision making processes of the
Evolutionary programming was created by Lawrence designer during design [87]. Although this kind of model
Fogel [30] for generating machine intelligence. Evolution- provides deeper understanding of the intellectual process
ary programming works directly on the variables of the during design, it is very difficult to transform into
problem and uses only inheritance from one parent: it computational terms.
creates new individuals only by mutation. Intelligent Design can be conceived as a search for a suitable or
behavior was viewed as the ability to predict the optimal construction, where the term search is used in a
environment and to give proper response so as to reach a technical sense. A search problem consists of a desired state
certain goal. Initially, evolutionary programming was (goal state), a search space and a search process. In design
applied to the evolution of finite state machines. the goal state represents the characteristics of the final
Evolution strategies were developed by Ingo Rechenberg design. The goal state is consistent and complete: its
[76]. Evolution strategies represent individuals as real characteristics are non-conflicting and fully specify the final
valued vectors and also create new individuals by mutation design. The search space is the set of all designs
only. In contrast to evolutionary programming, evolution characterized by all possible (or allowable) values of the
strategies select the parents for a new generation
design parameters. The search process (deterministic or
deterministically.
heuristic) consists of searching for the goal state in the
Genetic programming is a relatively new development
search space, in this case searching for the optimal design in
initiated by Nichael Cramer and John Koza [24,53,54].
the space of all designs.
Genetic programming operates on computer programs
A comprehensive bibliography on ‘Artificial Intelligence
represented in various forms—trees, sequential structures
in Design’ is maintained by Brown [13].
or graphs—by using modified genetic operators.
Engineering design is aimed at creating artifacts In many design situations the relationship between the
(products) that satisfy well-defined human needs or change functional requirements and the structure or form needed to
the environment around us. satisfy those requirements is known. In this case—referred
Expectations and requirements concerning the product to as routine design—the parameters allowing variation in
are described in design specifications. The design process the design are also known. The design task consists of
716 G. Renner, A. Ekárt / Computer-Aided Design 35 (2003) 709–726
defining appropriate values for the parameters, which Examples of such systems are evolutionary art systems.
frequently means searching for their optimal values. Most of these systems evolve aesthetic images, and require
The concepts of routine design can be directly mapped to human guidance in selecting the more beautiful ones.
genetic algorithms: the parameters are encoded as genes that Evolutionary art systems are very popular, and are available
form chromosomes, which are evolved by the genetic as art packages [9,81].
algorithm. There is a close relation—usually a one to one Systems that generate creative results (i.e. solve
mapping—between the chromosomes (genotype) and the problems that only creative people could solve) provide
parameters (phenotype). Addition and deletion of genes solutions automatically. The evolutionary techniques are
(parameters) is generally not performed during evolution. applied non-traditionally: only the tools for constructing the
In routine design, the search space is fully determined by solution are made available to the system, possible solutions
the structure and range of the design parameters. The fitness are not [9]. One way of doing this is to relax constraints in
function evaluates all states, and the goal state is determined order to explore more potential solutions [9,71]. In a
by the optimum of the fitness function. The search space is traditional GA system, only good parametrization leads to
defined by the chromosomes, and the search process is the good solutions. By allowing modification of the represen-
artificial evolution. tation, we could expect the GA system to be able to solve
The high efficiency of applying GAs to parameter problems beyond optimization. According to Boden [11],
optimization can be explained by the intensive exploration creativity can be achieved by finding some new solution that
and exploitation of the search space through selection, could not have been defined by a representation (but Boden
crossover and mutation. believes that computers will never be able to do so).
In the new approach, the parameters do not represent the
3.2. Creative design solution itself, but the components from which the solution
is constructed. The genetic representation consists of a set of
Creativity is a concept that is hard to define [66]. We rules for the construction of a solution. These rules are
mostly associate the attribute ‘creative’ to a human [9] for mapped into a solution through so-called embryogeny [9].
doing something that results in a creative product or The phenotype is then evaluated for fitness either with
performing something in a creative way. human guidance or automatically, by a fitness function.
For a long time there has been a general view that Embryogenies are used for exploring the search space, as
computers cannot be creative. Pioneering work on using they allow the construction of solutions from components,
computers for creative architectural design was done by contrary to genetic optimization where the parameters of a
Stiny and Mitchell, and Frazer [9,32]. An early application fixed system are optimized.
of artificial intelligence to the design of simple mechanical There are few systems generating creative results.
devices is the ‘EDISON’ system described by Dyer, Flower Bentley and Wakefield [10] propose an automatic creative
and Hodges [28], which is another attempt to make design system for optical prisms. Funes and Pollack [33] use
computers creative. artificial evolution to generate 2D and 3D Lego structures
It is only recently that so-called creative evolutionary that accomplish certain objectives. The obtained structures
systems have been developed. They are defined by Bentley are feasible and completely different from human-designed
and Corne [9] as evolutionary systems that possess one or structures. Taura and Nagasaka [90] use different represen-
both of the following features: tations for genotype, embryogeny and phenotype for
configuration design of a satellite. They adopt a so-called
1. They aid human creativity; adaptive-growth-type shape representation: the actual shape
2. They solve problems that only creative people could is determined by the interaction between the generational
solve. rules and the environment.
Goldberg [38] explains how to design and implement
In systems that aid human creativity selection is guided innovative genetic algorithms based on understanding
by the user. When the user is asked to rank the individuals in human innovation.
a population, he/she actually plays the role of a fitness We expect that as the advantages of creative evolution
evaluator, which is good and bad at the same time: are better understood, the number of such applications will
increase.
† good, because there is no need to define a fitness
function, and premature convergence can be avoided
through the user enforcing alternatives; 4. Genetic algorithm applications to design
† bad, because the system is very slow due to the limited
speed of rating and interaction. In general, the user Genetic algorithms are being applied to many areas
cannot cope with very large populations, and the user of engineering design in mechanical engineering, electrical
may judge the same individual differently at different engineering, aerospace engineering, architecture and
stages. civil engineering, etc. It is practically impossible to give
G. Renner, A. Ekárt / Computer-Aided Design 35 (2003) 709–726 717
a comprehensive overview of all existing applications even a way that it can move the population outside the original
for one such area. state space. This strategy supports creative design, and
We have decided to discuss six categories of applications therefore can be used in the conceptual stage of the design.
in mechanical engineering: conceptual design, shape
optimization, data fitting, reverse engineering, mechanism 4.2. Shape optimization
design and robot path design. These are the branches of
mechanical engineering in which GAs are most extensively Shape is one of the most important characteristics of
used. The common feature of all these areas is their strong technical objects; their compliance to functional require-
geometric nature, which is also important in most ments, and production costs strongly depend on shape.
engineering design problems. At the same time, the above Considerable efforts are continuously exerted in engineering
fields represent a wide range of mechanical engineering science to find better shapes, or to optimize the shape of a
problems. This also indicates that genetic algorithms can be component subject to engineering constraints.
efficient in solving problems with very different engineering Shapes can be described by a great variety of different
content within a similar framework and by using similar representations. They may be a structured set of shape
procedures. parameters; scalars, vectors, or discrete representations such
as pixels or voxels. In shape optimization, values of the
4.1. Conceptual design shape variables have to be determined which result in an
optimal value of a target parameter. This latter characterizes
Conceptual design of an artifact takes place in an early the object from some technical, economical or aesthetic
stage of design and usually requires the designer to act aspect or some combination of these. In engineering
creatively. The designer either uses novel components or practice, the function describing the dependency of the
combines known components in a novel way. The design target value on the shape variables—the fitness function for
parameters to be optimized are decided at this stage of the GAs—may be very complex, highly non-linear, having
design process. There could be several ways of constructing many local extrema, and even discontinuities. While
good conceptual designs, but there is no fixed methodology classical methods for optimization often fail under such
to follow. complicated conditions, genetic algorithms may offer
Goldberg [37] presents an idealized framework for solutions in many practical situations. In addition to this,
conceptual design. The essence of conceptual design is design constraints that are very hard to handle by analytic
captured in four components: a problem to solve (the design methods (e.g. forbidden regions of the space, tolerances)
challenge), someone to solve it (the designer), one or can be directly incorporated into a genetic optimization.
more (conceptual) designs, and a means for comparing In what follows, we discuss typical genetic solutions to
alternative designs (the design competition). He shows how shape optimization problems. Because of the rapid expan-
genetic algorithms can be thought of as ‘a lower bound sion of genetic applications, our overview may not be
on the performance of a designer that uses recombinative complete, and other ideas may be relevant as well.
and selective processes’. In other words, a human
designer should perform a conceptual design task at least 4.2.1. Parametric GA
as well as GAs. There is a great variety in the number and structure of
Bentley and Wakefield [10] describe a GA-based system shape parameters of different technical problems. Some-
that evolves new conceptual designs from scratch. They times we are lucky, being able to characterize the technical
apply the system to designing geometries of optical prisms problem just by one parameter. In Ref. [21], for example,
such that light is directed through the prisms according to the optimum diameter of a rotor shaft is sought by a genetic
the design specifications. Domain knowledge is used in the algorithm, to yield a critical speed as far as possible from the
evaluation software. Only the function of the design is pre- operating speed.
specified, the shape of the prism is not. For more For more complex shapes, more parameters are needed.
complicated problems they start from previously found Eby et al. [29] optimize by GA the shape and material
good components and optimize for their positions and for placement for a flywheel to give the maximum specific
the choice of components. energy density when having an upper bound on the
Cvetković and Parmee [25] use a genetic algorithm as a maximum allowable angular velocity. The shape is
component in a hybrid system for conceptual airframe composed of concentric rings, and the design parameters
design. Rasheed et al. [75] have devised a GA for are their heights. An injection island genetic algorithm (see
continuous design space search that uses new genetic Section 2.7.2) is applied that searches at various levels of
operators corresponding to the structures and properties of model resolution. The shape of a disk on which turbine
the engineering design domains. They apply the new GA to blades are mounted in a jet engine is optimized for minimal
conceptual supersonic aircraft design. Gero and Kazakov stress and mass by Smith et al. [86]. The design parameters
[35] use GAs to enlarge the state space, so that the set of specify the lengths of straight lines, and angles of the cross
possible designs changes. They generalize crossover in such section of the disk. Careful coordination between the genetic
718 G. Renner, A. Ekárt / Computer-Aided Design 35 (2003) 709–726
search process and evaluation through proper definition of interpolation, control points of a Bézier or B-spline
the genetic representation is emphasized. representation), they provide a natural transformation of
The size of the search space largely depends on the the inheritable characteristics of the curve into a sequential
genetic representation (the chromosome) of the object to be genetic code. As a result, the genetic code can be arranged in
designed. If the representation is very general, the space such a way that segments of the curve correspond to
could be too large, resulting in too many impossible, spiky segments of the chromosome. Accordingly, good segments
or unusual shapes being generated, and the probability of of the curve correspond to good substructures of the genetic
finding valid shapes can be quite low. Although invalid code, and the probability of disrupting a promising short
shapes can be eliminated by post-processing or using a code segment by crossover may be kept small. Later on, as
penalty in the fitness function, the search process will take the process evolves, the short segments meet each other in
an unnecessarily long time in these cases. In addition to this, the offspring and tend to produce longer and longer good
GA search may exploit weaknesses of the evaluation segments. Moreover, due to the nature of the segmentation,
process, e.g. finite element evaluations may give completely deception—a common GA malfunction when good sub-
misleading results outside the normal design space. If this structures lead to poor combined structures—rarely occurs.
results in good—but incorrect—fitness values, the whole Mäkinen et al. [58] use as shape parameters the control
search will be corrupted. The lesson is that careful points of a planar Bézier curve which describes the profile of
coordination of the search and the evaluation process is an airfoil. The cost function which must be minimized
necessary for a successful optimization. depends on the scattered electromagnetic wave and the
On the other hand, limiting the size of the search space or pressure distribution of the airfoil. Using the same two-
access to some of its regions by the genetic representation dimensional curve representation, Marco and Lanteri [60]
may hinder innovation in the GA process. A widely applied address the optimum shape design of several aerodynamic
methodology is to start with an existing, successful design configurations.
and optimize its parameters. For many technical design Different tasks in designing characteristic curves can also
problems this may be the correct solution, but one cannot be supported by genetic algorithms. Some conversions
expect to obtain constructions with novel and original between curve representations, which are frequently used in
shapes. CAGD, can be performed only approximately (e.g. degree
Deb [26] demonstrates the robustness and efficiency of reduction, rational to polynomial conversion). One possible
GA optimization by solving mechanical component design means of selecting the approximating curve is to apply an
problems in pressure vessel design, spring design, and additional criterion for its optimal shape. Márkus et al. [62]
hydrostatic thrust bearing design. The genetic represen- present a GA based method for degree reduction of Bézier
tations include geometric parameters of the components, curves. The approximating curve is defined to lie in a strip
which can be discrete or continuous. The results show that around the given high degree curve, as a constraint, and to
even if the initial population is away from the optimal have an optimal shape characterized by its minimal
solution, the GA can find a nearby optimal solution, which is curvature integral. The fitness of a curve is composed of
better than the results obtained by traditional methods. two parts: one is the curvature integral, and the other is a
A fairly large number of papers address the optimization penalty. The penalty depends upon the degree of constraint
of truss and bridge structures, including geometrical violation, i.e. the length of curve segment that leaves the
parameters such as size and cross sections [1,2,49,50,73, predefined strip. Strategies are developed to use different
88,96]. Grierson and Pak [39] present optimal design of types of crossover operations and varying weights of the two
skeletal building structures accounting for discrete sizing as components of fitness during the genetic process. To
well as geometrical and topological variables. Based on illustrate the genetic process, Fig. 3 shows the evolution
numerical experiments, different types of crossover oper- history of the population: the initial population, an
ations (single point, two point, multiple point, uniform) intermediate state, and the best curve as a sixth degree
were thoroughly evaluated with respect to the exploration curve together with the 11th degree original one.
and exploitation aspects of the search process, and relative A GA based method for the computation of curve –
effectiveness [1,50,88,96]. New types of crossover tech- curve intersections is presented in Ref. [41], which is
niques have also been suggested, e.g. the mixed crossover independent of the parametrization of the curve and of its
technique of Hasancebi and Erbatur [40] combines the topological properties (e.g. cusps, loops, zero curvature
crossover methods discussed in Section 2, and provides a spans, etc.). Pairs of randomly selected points on each
tool for controlling the exploration of the design space (at curve are represented in the chromosome. A genetic
the beginning of optimization), then its exploitation (in later algorithm works on the generations of point pairs, and by
stages of the genetic process). minimizing the distance between them, it converges to
In many cases, complex shapes can be optimized by one of the points of intersection.
optimizing the shape of characteristic curves. Whenever the In contrast to the simple bit strings commonly used in
ordering of the defining curve data has a close geometric GA literature, genetic algorithms of the above type usually
relation to consecutive parts of the curve (e.g. points of contain scalar or vector elements. This fact has further
G. Renner, A. Ekárt / Computer-Aided Design 35 (2003) 709–726 719
4.2.2. Cell GA
An alternative way of representing the shape of an object
to be optimized is to subdivide the design space into small
rectangular domains (pixels in 2D, voxels in 3D), and assign
them a binary full value (1) for material or empty value (0)
for void (see Fig. 4), or integers for different materials. This
kind of cellular representation has the advantage that any
shape can be represented with a certain accuracy, which can
be increased by increasing the resolution. At the same time,
the cellular representation can be mapped directly into a two
or three-dimensional binary genetic representation, result-
ing in a two or three-dimensional array chromosome. By
Fig. 3. Evolution history of the population.
applying this representation, domain specific knowledge
and geometric constraints can easily be built into the genetic
consequences; genetic operators and selection methods process. It has a great advantage from the point of view of
must be capable of handling these structures, which means shape optimization, and also compared to a parametric GA,
that readily available GA software packages cannot be used that the structure and topology of the object need not be
in shape design without modification. fixed in advance, but arise through the optimization process.
Shapes with complex geometrical properties can be As a result, a properly designed genetic process can work in
represented by two or three-dimensional grids of control an extended search space and give better results. However,
points of Bézier, B-spline, NURBS surfaces or volumes. unwanted small holes may appear in the final shape, and
Following the discussion for curves, a grid structure of lack of smoothness of the boundary may not be acceptable
control points may be suitable for genetic representation. in certain engineering problems.
Simple genetic codes are not applicable directly to these When a genetic algorithm for shape optimization is
structures, and new genetic operators must also be designed based on two or three dimensional arrays as a
developed. For example, crossover operating on grids of genetic representation, specific two or three dimensional
the same size can be defined by first randomly selecting crossover operators must be developed. One practical
subgrids at the same position in the two individuals and then solution—a direct generalization of one point crossover—
exchanging them in the offspring. A frequently occurring is first to select randomly a point in the middle of the array.
problem is the appearance of self-intersecting grids, which Then complementary parts of the parents’ chromosomes in
may result in self-intersecting shapes. To avoid this, blocks determined by the selected point are used to form the
intersecting grids may be locally deformed or they may be chromosomes of the children (see Fig. 5). For this type of
strongly penalized in the fitness calculation. Variants of the genetic representation, fitness evaluation is more compli-
control point representations can also be used as genetic cated and time consuming than in the case of a simple
representation of shapes. For example, Wataba and Okino sequential genetic code. Typically, planar or spatial
[95] use the free form deformation lattice (deformation of a distribution of geometrical or physical quantities need to
grid of Bézier control points) introduced by Sederberg and
Parry [84] as shape chromosomes, and solve a minimum
weight design problem with constraint conditions, and
limitation of maximum stress.
In many practical shape optimization problems, evalu-
ation of the fitness function for a given set of shape
parameters is computationally demanding; it frequently
requires the solution of non-linear state equations in two or
three dimensions. Genetic algorithms, however, can be
easily parallelized (see Section 2.7.2): after individuals of
the current population have been created, evaluation of their
fitness can be computed in parallel. In this setting a master–
slave distribution of the work is efficient. In more complex
cases, more sophisticated ways of distributing computations
may be needed, e.g. distribution among several levels of Fig. 4. The cell representation of a cantilever.
720 G. Renner, A. Ekárt / Computer-Aided Design 35 (2003) 709–726
been made to replace the complicated and unreliable 4.4. Reverse engineering
process of determining the fitting parameters or a subset
of them with genetic algorithms. Fitting curves and surfaces to a large number of digitized
Márkus et al. [63] develop a genetic algorithm for the data points constitutes an important part of reconstructing a
computation of parameter values associated with given data geometric model from a physically existing object. The
points as knots of an interpolating cubic spline curve. The process of reverse engineering [94] starts with registration,
curve has optimal shape in the sense that its curvature i.e. matching and fusing of point sets from separate views.
integral is minimal. An additional constraint can also be Then a topology (usually a triangulation) is built over the
handled; the curve must not pass outside a strip around a unstructured point cloud, which reflects neighborhood
predefined curve (which is here the interpolating curve with relations. The main parts of the reconstruction are to
chord length parameter). separate subsets of data that belong to the constituting
The application of a statistical technique called kriging geometrical elements, and to determine types and par-
was proposed for curve and surface fitting by Limaiem et al. ameters of the extracted elements. For each phase, the
[56]. The kriging model consists of a drift function application of GA techniques has been investigated.
describing the average shape and fluctuations, derived GAs were used for registration of 3D images in medical
from the general covariance function. The model par- applications by Jacq and Roux [48], and for free form
ameters are set by a GA to yield the minimum average error surface matching by Brunnström and Stoddart [14]. In
between the kriged (continuous) curve or surface and the registration, a 3D transformation is to be determined, which
data points. brings a pair of point sets into correspondence. Although
The special case of data fitting when a polygonal accurate registration is usually based on gradient descent
approximation of an object curve is sought is fundamental algorithms (e.g. iterative closest point, ICP), they work only
in computer graphics, image processing and pattern if an initial guess reasonably close to the actual solution is
recognition, and also plays an important role in engineering known. In Ref. [14] chromosomes represent a correspon-
design (e.g. NC tool path calculation). The GA based dence between the two point sets. The fitness reflects the
quality of the match by evaluating quantities that are
technique developed by Huang and Sun [46] significantly
invariant under translation and rotation (distances and
reduces the integral square error between the polygon and
relative orientation of normal vectors between point
the curve, and is insensitive to the selection of starting point
pairs). When a good match has been achieved, the
for a closed curve and initial solutions.
transformation is computed by an SVD based solution of
Manela et al. [59] apply genetic search to finding the best
a system of least-squares equations. Yamany et al. [97] use a
combination of the number of knots and the factor that
somewhat different strategy of registration. Their matching
balances the interpolating and smoothness capabilities of a
is based on a grid closest point technique. The genetic code
univariate cubic spline function fitted to noisy data points.
is composed of the parameters of the transformation matrix,
The cost function to be minimized is the Generalized Cross
and the genetic search minimizes the distances between
Validation Function (suggested by Craven and Wahba), and associated points.
the control points are computed by linear least-squares The construction of an optimized triangulation of a point
minimization. set is discussed by Chen and Wang [20]. Although the
The difficulties in defining the fitting parameters are even method was developed for creating optimized STL files (a
more serious if not just a low dimensional shape, but a large standard for rapid prototyping), it seems to be suitable for
set of high dimensional data with a large number of preparing surface reconstruction as well. Starting from an
variables (say 20 or 30) must be fitted. Rogers [78] describes initial triangulation, triangles which are coplanar or nearly
a multidimensional (multivariate) adaptive linear regression coplanar are removed. Then blank regions, bounded by a set
algorithm, which determines linear spline parameters using of straight-line segments, are re-triangulated by a genetic
a GA. The fitness function is based on the least squared error algorithm. To obtain a valid triangulation, constraints are
with an additional penalty term related to the size of the built into the initial population, the crossover and the
model. mutation operators (a geometry constraint and crossing
Classical least squares methods can be quite sensitive to constraint). Fitness is evaluated according to the smoothness
noise and errors in the data, and especially to outliers (points of the triangulation in the blank region, the smoothness of its
that are not consistent with the rest of the data set). Robust connection to the surroundings, and the shape of the
statistical procedures, such as median least squares, have individual triangles (equiangularity).
been developed for these cases; they are superior to least The extraction of geometric primitives (straight lines,
squares techniques in a strongly noisy environment. Their circles) using GAs is discussed by Hill and Taylor [42] and
basic characteristic is that they are powerful, if they are Roth and Levine [80]. Their methods are mainly aimed at
combined with an efficient search algorithm. Karr et al. [52] 2D-image interpretation. Chen and Liu [19] give a GA
utilize the search capability of a GA to develop a least based algorithm which is capable of extracting quadric
median square curve-fitting algorithm. surfaces from a set of data points. The genetic representation
722 G. Renner, A. Ekárt / Computer-Aided Design 35 (2003) 709–726
is a string containing the indexes of a set of data points (gene considered as a non-linear programming problem and an
points) as elements. For the fitness evaluation, the (pseudo exact gradient method is used for the dimensional synthesis
geometric) distances of data points to a quadric—least- of mechanisms [61].
squares fitted to the gene points—are evaluated. The Also, for problems with more than five points specified,
evolution of the surface representation is achieved through some variant based methods have been developed, such as
the genetic improvement of the gene points. The extracted case-based reasoning [12]: after a multi-level case retrieval
surfaces are classified into specific quadric surfaces process, adaptation is accomplished by simple transform-
according to a classification table. ation rules (increasing or decreasing the length of one link by
a small percentage). However, the method is applicable only
4.5. Mechanism design to cases where the coupler curve contains no crossings or
there is a close-enough curve in the case-base. In other work
A mechanism is defined as an arrangement of machine [43] neural networks are used for learning and synthesizing
elements that produce a specified motion. The synthesis of a mechanisms for coupler curves similar to the ones stored in
mechanism is the process of combining parametric elements the knowledge base. Since the coupler curves are stored as
into a mechanism that shows complex behavior. bitmaps, pattern matching is used to find similar curves.
Four bar mechanisms are a class of simple but practically Several works [55,79,93] address the path generation
important mechanisms. Their utilization ranges from simple problem by means of genetic algorithms. In fact, the main
devices, such as windshield-wiping mechanisms and door- characteristics of the problem are such that the application
closing mechanisms, to complicated ones, such as rock of genetic algorithms is almost straightforward:
crushers, sewing machines, round balers, and suspension
systems of automobiles. † there is no exact solution for the general problem of n-
Fig. 6 shows the structure of a four bar mechanism, point path generation, as the problem is overconstrained,
where a represents the fixed link, b the input link, c the and therefore cannot be solved by classical analytical
coupler link, d the follower link, and P the tracer point. methods;
Designing four bar mechanisms for generating a † the problem can be seen as an error minimization
particular path is a very difficult problem. The path problem, i.e. a good solution mechanism generates a
generation problem can be stated as follows: given certain coupler curve that is as close to the desired points as
path fragments, find the mechanism (i.e. its structural possible; and
parameters) whose coupler curve contains these fragments. † there are a fixed number of numerical parameters, i.e.
A path fragment is given as an ordered set of points. In the the lengths of links, the location of the coupler point,
case of path generation with prescribed timing, an input and possibly the position of the mechanism.
angle is associated with each point (a in Fig. 6). The
classical analytical approach [82] is limited to the case of When deciding on the GA implementation for the four
five specified points. For more than five points the path bar mechanism design problem, one has to consider the fact
generation problem is overconstrained, and in most cases that the problem domain is highly constrained. Each
there is no mechanism that produces exactly the desired mechanism can be completely described by a set of real-
path. In these cases, the problem can be relaxed by valued parameters corresponding to the link lengths and
specifying an acceptable tolerance between the input path positions, but not every set of values for the parameters
fragments and the coupler curve. For this more general case, represents a feasible mechanism (for example, no mechan-
there is no general recipe for choosing the structural ism with b þ c þ d , a can be manufactured). For example,
parameters for the mechanism that approximates a given Kunjur and Krishnamurty [55] define genetic operators that
path. Recent work has been done on finding numerical create only feasible mechanisms as offspring when applied
methods for the general case: e.g. mechanism synthesis is to feasible parents.
The representation can be binary [79] or real-valued [55]
and accordingly, the genetic operators can be the usual
crossover and mutation or specialized operators for this
specific problem. Kunjur and Krishnamurty [55] use a
specialized crossover operator that creates an offspring
whose design variable values are in between the corre-
sponding design variable values of its parents. They also
take into consideration the relative quality of the parent
designs when applying crossover.
Evaluation is based on the difference between the actual
path followed by the tracer point and the desired path
fragments. A point of the mechanism’s swept path is
Fig. 6. The four bar mechanism layout. associated with each point on the desired path fragment and
G. Renner, A. Ekárt / Computer-Aided Design 35 (2003) 709–726 723
the distance between them is computed. The fitness of a additional constraints. Several approaches exist for supply-
mechanism is then computed as a function of these ing these additional constraints [70], such as the so-called
positional errors. resolved motion method and the extended Jacobian method,
The results are promising: the GA provides the designer both involving computing the inverse or the pseudoinverse
with an approximate solution for a number of specified points of a Jacobian matrix; the method based on Lagrangian
on the desired path (up to 24 in Ref. [79]), and there is no need multipliers; the method using a modified Newton – Raphson
to browse through large catalogs and try out many linkages. It technique for solving a system of nonlinear equations.
is the decision of the designer whether a mechanism Appropriate constraints are derived for the most flexible
producing a certain error is of acceptable quality. There configuration, the most realizable joint angle velocities and
can be other requirements for the mechanism, such as ‘no part the maximized force exertion capability. When tackling the
of the mechanism should leave a predefined area’. These robot manipulator positioning problem, GAs have several
additional constraints can be easily incorporated into the GA advantages over previous methods [67,70,92]:
system, and the designer does not have to perform any
tedious computations in order to redesign the mechanism. † the fitness function does not need to have continuous
GAs have also proved successful in the design of more derivatives;
complicated, five bar mechanisms [23]. Five bar mechan- † no Jacobian matrix needs to be computed (singularity
isms are also designed for producing desired coupler curves; problems related to inverting the matrix can be avoided);
the main difference from four bar mechanisms is that they † only forward kinematics equations are needed;
have two inputs. The input link rotates fully around its † joint rotation limits (for feasibility) can be handled
ground point and the final link is a servo motor input having directly;
a programmable motion. This is a multiobjective optimiz- † any additional constraints can be easily specified;
ation problem: † several solutions can be produced by using multiple
populations.
† the coupler point must follow the desired coupler curve
(within the given tolerance range), Parker et al. [70] use simple binary GAs to solve an
† the mechanism must be mobile, that is, for all given inverse kinematic problem for a redundant robot with four
positions of the input link, the mechanism should be able degrees of freedom allowing arbitrary positioning in three-
to close (there are two possibilities of closure for any dimensional space. They use as fitness function a weighted
mobile mechanism), sum of the positioning error and the rotational displacement
† the constraints on the servo motor displacements of the joint angles from the initial position. They aim for
should be met. zero positioning error and minimum displacement. The
solutions offered by the GA are close to the global optimum
For evaluation, the multiple objectives are combined into in terms of displacement, but the positioning error is
a weighted sum. The GA is able to find designs better (from relatively high. The use of a Newton –Raphson technique is
the point of view of servo motor displacements) than a proposed for reducing the positioning error.
standard test mechanism. Van de Logt and Walter [92] use multi-population GAs
for finding multiple solutions to the positioning problem for
4.6. Robot path design a six degrees-of-freedom robot arm. They optimize for both
position and orientation error. They maintain several
Robot manipulators are universally used in industry when independent subpopulations that may interact only through
the operating environment is too dangerous for humans, two special operators: exchange and migration. The
such as highly radioactive areas, or when the required work exchange operator compares the best individuals of all
is very time consuming [15]. The positioning task consists of subpopulations. If two individuals are very similar, the
determining the movement of the manipulator that leads its exchange operator replaces the top individuals in one of the
end effector from an initial position to a goal position. For subpopulations with random individuals. The migration
increased flexibility, the manipulator is usually redundant; operator consists of the movement of selected individuals of
i.e. it has at least one degree of freedom more than the each subpopulation to another subpopulation (see Section
minimum necessary for the positioning task. Given the 2.7.2). This approach is able to find solutions that are
motion of the joints and links of a redundant manipulator, it relatively close to the actual optima. Note that the number of
is easy to determine the position of the end effector, i.e. the subpopulations used is an upper bound for the number of
forward kinematics of redundant manipulators is fairly solutions that could be found. In order to obtain all the
simple. But for a given positioning of the end effector, there optima, one should know the number of solutions in advance
may exist an infinite number of joint variable settings which in order to choose an appropriate number of subpopulations.
produce this positioning [70]. This makes solving the The path planning problem becomes more complicated if
inverse kinematics very difficult: from a large number of static or dynamic obstacles are present in the environment.
feasible solutions one has to select the best one by imposing Then the new objective of planning a collision-free path
724 G. Renner, A. Ekárt / Computer-Aided Design 35 (2003) 709–726
emerges. Buckley et al. [15] report on applying GAs for The strength of genetic algorithms in design can be
positioning a snake manipulator in a gas duct for inspection attributed to several factors. They are flexible and can be
and repair work in nuclear reactors. With a simple GA they adapted to different design problems. Realization of GA
experienced premature convergence, and the GA population procedures results in robust and stable algorithms and
quickly converged to sub-optimal solutions. The loss of computer codes. Complexity of a problem can be handled
diversity in the simple GA was due to the fact that most of by their ability to work with many parameters simul-
the encoded parameters were strongly dependent on others. taneously in a search space of complicated structure. In
Much better, but still not optimal results were obtained design applications it is very important that there is a built-
when rank-based selection, diversity promoting techniques in tendency to find global optima. GAs can also be used
and domain knowledge were used. They used a so-called beyond parameter optimization, for creative design.
incest prevention scheme that allows mating only between Due to the nature of design problems, the application of
dissimilar individuals. The incorporation of knowledge GAs is not always as straightforward and successful as it
related to the kinematics of the snake manipulator reduced would seem. For instance, evaluation of the quality of the
the search space and resulted in improved performance. solutions (i.e. the fitness function) during the genetic
Nearchou and Aspragathos [67] formulate the collision- process can be computationally very demanding (e.g.
free path planning problem as a constrained optimization requiring finite element analysis software). Great efforts
problem. They use a fitness function based on positioning have been made towards reducing the number of evaluations
error and assign a fitness value of zero to any path with needed before the final solution is reached. This has resulted
collisions. The decision whether a path is collision-free is in advanced and improved genetic algorithms, such as
made with the help of a method based on convex hulls. The parallel and distributed GAs.
solutions guarantee obstacle avoidance and their positioning Genetic algorithms imitate the very basic properties and
error is also acceptable. fundamental mechanisms of natural evolution. Natural
Rana and Zalzala [74] tackle the problem of path evolution, however, possesses complicated structures and
planning for two robot manipulators which act as dynamic complex, well regulated and fine-tuned mechanisms.
obstacles for each other. The paths are represented as strings Although our current knowledge about evolution is rather
of via-points through which the robots have to pass. Fitness limited, we can expect that ideas learned from studying
is calculated as a weighted sum of penalties for path lengths, evolution will be extensively used to solve complex
uneven distribution of via-points and collisions. They also engineering problems. Promising results have been obtained
consider a safety distance between the two robots at any in all fields of evolutionary computation. More complex
time instant. biological structures and mechanisms (e.g. brain, viruses,
and immune system) can also be incorporated into
computational systems in order to support complex
5. Conclusion intellectual activities, like design. A great challenge for
future research is to understand the functioning of these
Evolutionary methods such as genetic algorithms have systems and to transpose abstracted ideas into computer
increasingly been applied in engineering in the past decade. aided design systems.
Basically, genetic algorithms have been considered as tools
for optimization and parameter tuning in engineering design.
Although the algorithmic implementation of artificial Acknowledgements
evolution is much simplified compared to real natural
evolution, GAs are capable of solving surprisingly complex
The authors are grateful to Ralph Martin for numerous
design problems. Genetic algorithms conduct a search
helpful comments and suggestions.
through the space of potential solutions to the problem.
They provide a balance between two search strategies—
exploration and exploitation—: they explore the search
space and in the mean time exploit the good features of References
already found promising solutions. GAs perform an
[1] Adeli H, Cheng N-T. Integrated genetic algorithms for optimization of
independent sampling on a large population of design
space structures. J Aerospace Engng 1993;6(4):315–28.
solutions, then select members of the population, i.e. highly [2] Adeli H, Cheng N-T. Concurrent genetic algorithms for optimization
fit designs, for survival, and create new designs by crossover of large structures. J Aerospace Engng 1994;7(3):276 –96.
(combination of building blocks from different individuals) [3] Asimov M. Introduction to design. New Jersey: Prentice Hall; 1962.
and by mutation. Crossover ensures the inheritance and [4] Bäck TB, Hammel U, Schwefel H-P. Evolutionary computation:
comments on the history and current state. IEEE Trans Evolutionary
dominance of valuable features, whereas mutation intro-
Comput 1997;1(1).
duces variability. Together with the selection mechanism, [5] Baron P, Fisher R, Tuson A, Mill F, Sherlock A. A voxel-based
they drive the artificial evolution process towards generat- representation for evolutionary shape optimization. Artif Intell Engng
ing better and better solutions. Des, Anal Manufact 1999;13:145–56.
G. Renner, A. Ekárt / Computer-Aided Design 35 (2003) 709–726 725
[6] Beasley D, Bull DR, Martin RR. An overview of genetic algorithms: [32] Frazer J. Creative design and the generative evolutionary paradigm.
part 1, fundamentals. University Comput 1993;15(2):58–69. In: Bentley PJ, Corne DW, editors. Creative evolutionary systems.
[7] Beasley D, Bull DR, Martin RR. A sequential niche technique for New York: Academic Press; 2002. p. 253 –74.
multi-modal function optimisation. Evolutionary Comput 1993;1(2): [33] Funes P, Pollack J. Computer evolution of buildable objects. In:
101–25. Bentley PJ, editor. Evolutionary design by computers. Los Altos:
[8] Bentley P. An introduction to evolutionary design by computers. Morgan Kaufmann; 1999. p. 387 –403.
Evolutionary Design by Computers, Los Altos, CA: Morgan [34] Gero J. Design prototypes: a knowledge representation schema for
Kaufmann; 1999. design. AI Magazine 1990;11(4):26 –36.
[9] Bentley PJ, Corne DW. An introduction to creative evolutionary [35] Gero J, Kazakov V. Adaptive enlargement of state spaces in
systems. Creative Evolutionary Systems, New York: Academic Press; evolutionary designing. Artif Intell Engng Des, Anal Manufact
2002. 1– 75. 2000;14:31 –8.
[10] Bentley PJ, Wakefield JP. Conceptual evolutionary design by a [36] Goldberg DE. Genetic algorithms in search, optimization, and
genetic algorithm. Engng Des Automation 1997;3(2):119–31. machine learning. Reading, MA: Addison-Wesley; 1989.
[11] Boden M. The creative mind: myths and mechanisms. London [37] Goldberg DE. Genetic algorithms as a computational theory of
Cardinal; 1992. conceptual design. Appl Artif Intell Engng 1991;VI:3 –16.
[12] Bose A, Gini M, Riley D. A case-based approach to planar linkage [38] Goldberg DE. The design of innovation: lessons from and for genetic
design. Artif Intell Engng 1997;11:107–19. algorithms. Dordercht: Kluwer; 2002.
[13] Brown, DC. Worcester Polytechnic Institute artificial intelligence in [39] Grierson DE, Pak WH. Optimal sizing, geometrical and topological
design webliography. http://cs.wpi.edu/Research/aidg/AIinD-hotlist. design using a genetic algorithm. Struct Optimization 1993;6(3):
html, Worcester Polytechnic Institute; 2002. 151–9.
[14] Brunnström K, Stoddart AJ. Genetic algorithms for free-form surface [40] Hasancebi O, Erbatur F. Evaluation of crossover techniques in genetic
matching. Proc Int Conf Pattern Recogn 1996;IV:689 –93. algorithms based optimum structural design. Comput Struct 2000;
[15] Buckley KA, Hopkins SH, Turton BCH. Solution of inverse 78(1–3):435–48.
kinematics problems of a highly kinematially redundant manipulator [41] Hawat RN, Piegl LA. Genetic algorithm approach to curve–curve
using genetic algorithms. Genetic Algorithms Engng Syst: Inno- intersection. Math Engng Ind 1998;7(2):269–82.
vations Appl 1997;264 –9. [42] Hill A, Taylor CJ. Model based image interpretation using genetic
[16] Cantú-Paz E. A survey on parallel genetic algorithms. ILLIGAL algorithms. Image Vision Comput 1992;10:295– 300.
report 97003, University of Illinois at Urbana-Champain; 1997. [43] Hoeltzel DA, Chieng W-H. Pattern matching synthesis as an approach
[17] Chapman CD, Jakiela MJ. Genetic algorithm-based structural to mechanism design. ASME J Mech Des 1990;112:190–9.
topology design with compliance and topology simplification [44] Holland JH. Adaptation in natural and artificial systems. Ann Arbor:
considerations. J Mech Des 1996;118:89 –98. The University of Michigan Press; 1975.
[18] Chen SY, Rajan SD. A robust genetic algorithm for structural [45] Horn J, Nafpliotis N, Goldberg DE. A niched Pareto genetic algorithm
optimization. Struct Engng Mech 2000;10(4):313– 36. for multiobjective optimization. Proc First IEEE Conf Evolutionary
[19] Chen YH, Liu CY. Quadric surface extraction using genetic Comput 1994;82–7.
algorithms. Comput Aid Des 1999;31(2):101–10. [46] Huang SC, Sun YN. Polygonal approximation using genetic
[20] Chen YH, Wang YZ. Genetic algorithms for optimized retriangulation algorithms. Pattern Recogn 1999;32:1409 –20.
in the context of reverse engineering. Comput Aid Des 1999;31(4): [47] Hubka V. Principles of engineering design. Guildford: Butterworth
261–71. Scientific ; 1982.
[21] Choi BG, Tang BS. Optimum shape design of rotor shafts using [48] Jacq JJ, Roux C. Registration of 3D images by genetic optimization.
genetic algorithm. J Vibration Control 2000;6:207– 22. Pattern Recogn 1995;16(8):823 –56.
[22] Coello CAC. An updated survey of evolutionary multiobjective [49] Jenkins WM. Plane frame optimum design environment based on
optimization techniques: state of the art and future trends. Proc genetic algorithm. J Struct Engng 1992;118(11):3103–12.
Congress Evolutionary Comput 1999;3–13. [50] Jenkins WM. On the application of natural algorithms to structural
[23] Connor AM, Douglas SS, Gilmartin MJ. The synthesis of hybrid five- design optimization. Engng Struct 1997;19(4):302– 8.
bar path generating mechanisms using genetic algorithms. Genetic [51] Kane C, Schoenauer M. Genetic algorithms for two dimensional
Algorithms Engng Syst: Innovations Applications 1995;313–8. shape optimization. Artif Evolution 1996;355–69.
[24] Cramer N. A representation for the adaptive generation of simple [52] Karr CL, Weck B, Massart DL, Vankeerberghen P. Least median
sequential programs. Proc Int Conf Genetic Algorithms Appl 1985; squares curve fitting using a genetic algorithm. Engng Appl Artif
183–7. Intell 1995;8(2):177–89.
[25] Cvetković D, Parmee IC. Genetic algorithms based systems for [53] Koza JR. Genetic programming: on the programming of computers by
conceptual engineering design. Int Conf Engng 1999;29–36. means of natural selection. Cambridge, MA: MIT Press; 1992.
[26] Deb K. GeneAS: a robust optimal design technique for mechanical [54] Koza JR. Genetic programming: automatic discovery of reusable
component design. Evolutionary algorithms in engineering appli- programs. Cambridge, MA: MIT Press; 1994.
cations, Berlin: Springer; 1997. p. 497–514. [55] Kunjur A, Krishnamurty S. Genetic algorithms in mechanism synthesis.
[27] Duda JW, Jakiela M. Generation and classification of structural Fourth Applied Mechanisms and Robotics Conference; 1995.
topologies with genetic algorithm speciation. J Mech Des 1997;119: [56] Limaiem A, Nassef A, El-Maraghy HA. Data fitting using dual kriging
127–31. and genetic algorithms. Ann CIRP 1996;45(1):129–34.
[28] Dyer M, Flower M, Hodges J. EDISON: an engineering design [57] Mahfoud S. Niching methods for genetic algorithms. ILLIGAL report
invention system operating naively. Artif Intell 1986;1:36–44. 95001, University of Illinois at Urbana-Champaign; 1995.
[29] Eby D, Averill RC, Punch WF, Goodman ED. Optimal design of [58] Mäkinen R, Periaux J, Toivanen J. Shape design
flywheels using an injection island genetic algorithm. Artif Intell optimization in 2D aerodynamics using genetic algorithms on
Engng Des, Anal Manufact 1999;99:327–39. parallel computers. Parallel Comput Fluid Dyn: Implementations
[30] Fogel L, Owens AJ, Walsh MJ. Artificial Intelligence Simulated Results Using Parallel Comput, Proc Parallel CFD’95 Conf 1996;
Evolution 1966. 395–402.
[31] Fonseca CM, Fleming PJ. Genetic algorithms for multiobjective [59] Manela M, Thornhill N, Campbell JA. Fitting spline functions to
optimization: formulation, discussion and generalization. Proc Fifth noisy data using a genetic algorithm. Proc Fifth Int Conf Genetic
Int Conf Genetic Algorithms 1993;416–23. Algorithms 1993;549–53.
726 G. Renner, A. Ekárt / Computer-Aided Design 35 (2003) 709–726
[60] Marco N, Lanteri S. A two level parallelization startegy for genetic [85] R. Smith. A parameterised Rolls Royce annulus. Internal report no.
algorithms applied to optimum shape design. Parallel Comput 2000; 21, Manufacturing and Planning Group, Department of Mechanical
26(4):377– 97. Engineering, University of Edinburgh, UK; 1995.
[61] Mariappan J, Krishnamurty S. A generalized exact gradient method [86] Smith R, Warrington S, Mill F. Shape representation for optimization.
for mechanism synthesis. Mech Mach Theory 1996;31:413–21. Genetic Algorithms Engng Syst: Innovations Appl 1995;112–7.
[62] Márkus A, Renner G, Váncza AJ. Genetic algorithms in free form [87] Smithers T. AI based design vs. geometry based design, or why design
curve design. Math Meth Curves Surfaces 1995;343–54. cannot be supported by geometry alone. Comput Aid Des 1989;21(3):
[63] Márkus A, Renner G, Váncza J. Spline interpolation with genetic 141 –50.
algorithms. Shape Modeling Appl 1997;47–54. [88] Syswerda G. Uniform crossover in genetic algorithms. Proc Third Int
[64] Michalewicz Z. Genetic algorithms þ data structures ¼ evolution Conf Genetic Algorithms 1989;2–9.
programs. Berlin: Springer; 1992. [89] Tan KC, Lee TH, Khor EF. Evolutionary algorithms for multi-
[65] Michalewicz Z, Dasgupta D, Riche RGL, Schoenauer M. Evolution- objective optimization: performance assessments and comparisons.
ary algorithms for constrained engineering problems. Comput Ind Artif Intell Rev 2002;17:253 –90.
Engng 1996;30(4):851–70. [90] Taura T, Nagasaka I. Adaptive-growth-type 3D representation for
[66] Michie D, Johnston R. The creative computer: machine intelligence configuration design. Artif Intell Engng Des, Anal Manufact 1999;13:
and human knowledge. Penguin; 1985. 171 –84.
[67] Nearchou AC, Aspragathos NA. Application of genetic algorithms to [91] Taura T, Nagasaka I, Yamagishi A. Application of evolutionary
point-topoint motion of redundant manipulators. Mech Mach Theory programming to shape design. Comput Aid Des 1998;30(1):29–35.
1996;31(3):261–70. [92] van de Logt G, Walter M. Computing robot configurations using a
[68] Nowostawski M, Poli R. Parallel genetic algorithm taxonomy. Proc genetic algorithm for multimodal optimization. IEEE World Congress
Third Int Conf Knowledge-based Intell Information Engng Systems Comput Intell, 1998 EEE Int Conf Evolutionary Comput 1998;312–7.
KES’99 1999. [93] Vancsay G. The application of genetic algorithms in mechanical
[69] Oei CK, Goldberg DE, Chang SJ. Tournament selection, niching and design (in Hungarian). PhD thesis, Technical University of Budapest;
the preservation of diversity. ILLIGAL report 91011, University of 2000.
Illinois at Urbana-Champaign; 1991. [94] Várady T, Martin R, Cox J. Reverse engineering of geometric
[70] Parker JK, Khoogar AR, Goldberg DE. Inverse kinematics of models—an introduction. Comput Aid Des 1997;29(4):255 –68.
redundant robots using genetic algorithms. IEEE Int Conf Robotics [95] Wataba H, Okino A. A study on genetic shape design. Proc Fifth Int
Automation 1989;271–6. Conf Genetic Algorithms 1993;445–50.
[71] Parmee I. Exploring the design potential of evolutionary search, [96] Wu S-J, Chow P-T. Steady-state genetic algorithms for discrete
exploration and optimisation. In: Bentley PJ, editor. Evolutionary optimization of trusses. Comput Struct 1995;56(6):979– 91.
design by computers. Los Altos: Morgan Kaufmann; 1999. p. [97] Yamany SM, Ahmed MN, Farag AA. A new genetic-based technique
119–43. for matching 3D curves and surfaces. Pattern Recogn 1999;32:
[72] Raich AM, Ghaboussi J. Evolving structural design solutions using an 1817–20.
implicit redundant genetic algorithm. Struct Multidisciplinary Optim- [98] Yin X, Germay N. A fast genetic algorithm with sharing scheme using
ization 2000;20(3):222– 31. cluster analysis methods in multimodal function optimization. In:
[73] Rajeev S, Krishnamoorty CS. Discrete optimization of structures Albrecht RF, Steele NC, Reeves CR, editors. Artificial neural nets and
using genetic algorithms. J Struct Engng 1992;118(5):1233–50. genetic algorithms. ; 1993. p. 450– 7.
[74] Rana AS, Zalzala AMS. An evolutionary algorithm for collision free
motion planning of multi-arm robots. Genetic Algorithms Engng Syst:
Innovations Appl 1995;123 –30.
[75] Rasheed K, Hirsh H, Gelsey A. A genetic algorithm for continuous Gábor Renner is a senior research fellow at the
design space search. Artif Intell Engng 1997;11:295– 305. Computer and Automation Institute, Hungarian
[76] Rechenberg I. Evolutionsstrategie: Optimierung technischer Systeme Academy of Sciences, and a professor at the
nach Prinzipien der biologischen Evolution; 1973. Technical University, Budapest. He holds an MS
[77] Rivera W. Scalable parallel genetic algorithms. Artif Intell Rev 2001; in electrical engineering and an advanced degree
16:153–68. of technical sciences (PhD) in computer science.
[78] Rogers D. G-splines: a hybrid of Friedman’s multivariate He is author of more than 80 papers on
adaptive regression splines (MARS) algorithm with Holland’s geometric modeling, reverse engineering and
genetic algorithm. Proc Fourth Int Conf Genetic Algorithms 1991; CAD/CAM, published in international journals and conference proceed-
384–91. ings. His recent research interests include curve and surface design,
[79] Roston GD, Sturges RH. Genetic algorithm synthesis of four-bar reconstruction of free form surfaces, medial surface computations and
mechanisms. Artif Intell Engng Des, Anal Manufact 1996;10: geometric optimization with genetic algorithms.
371–90.
[80] Roth G, Levine MD. Geometric primitive extraction using a genetic
algorith. IEEE Trans Pattern Anal Mach Intell 1994;16(9):901–5. Anikó Ekárt has an MS degree in electrical
[81] Rowbottom A. Evolutionary art and form. In: Bentley PJ, editor. engineering and a PhD degree in informatics.
Evolutionary design by computers. Los Altos: Morgan Kaufmann; She is a lecturer at the University of Birming-
1999. p. 261–77. ham, UK, and also a senior research fellow at the
[82] Sandor GN, Erdman AG, Advanced mechanism design: analysis and Computer and Automation Institute, Hungarian
synthesis, vol. 2. Englewood Cliffs, NJ: Prentice Hall; 1984. Academy of Sciences. Her main research area is
[83] Schaffer JD. Multiple objective optimization with vector evaluated evolutionary computation, including appli-
genetic algorithms. Genetic Algorithms Appl: Proc First Int Conf cations of genetic algorithms and genetic
Genetic Algorithms 1985;93–100. programming to engineering design problems. She is currently teaching
[84] Sederberg TW, Parry R. Free form deformation of solid geometric Artificial Intelligence Techniques and Human–Computer Interaction. For
models. SIGGRAPH’86 1986;20(4):151– 60. more information see http://www.cs.bham.ac.uk/ , axe