On Design Mining:
Coevolution and Surrogate Models

arXiv:1506.08781v6 [] 23 Nov 2016

Richard J. Preen∗ and Larry Bull
Department of Computer Science and Creative Technologies
University of the West of England, Bristol, UK
November 24, 2016

Abstract
Design mining is the use of computational intelligence techniques to iteratively search
and model the attribute space of physical objects evaluated directly through rapid prototyping to meet given objectives. It enables the exploitation of novel materials and
processes without formal models or complex simulation. In this paper, we focus upon
the coevolutionary nature of the design process when it is decomposed into concurrent
sub-design threads due to the overall complexity of the task. Using an abstract, tuneable model of coevolution we consider strategies to sample sub-thread designs for whole
system testing and how best to construct and use surrogate models within the coevolutionary scenario. Drawing on our findings, the paper then describes the effective design
of an array of six heterogeneous vertical-axis wind turbines.

Keywords— 3D printing, coevolution, shape optimisation, surrogate models, turbine,
wind energy

∗ Contact

author. E-mail: richard2.preen@uwe.ac.uk

1

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

1

Introduction

Design mining [54, 55, 56] is the use of computational intelligence techniques to iteratively
search and model the attribute space of physical objects evaluated directly through rapid
prototyping to meet given objectives. It enables the exploitation of novel materials and
processes without formal models or complex simulation, whilst harnessing the creativity
of both computational and human design methods. A sample-model-search-sample loop
creates an agile/flexible approach, i.e., primarily test-driven, enabling a continuing process
of prototype design consideration and criteria refinement by both producers and users.
Computational intelligence techniques have long been used in design, particularly for
optimisation within simulations/models. Recent developments in additive-layer manufacturing (3D printing) means that it is now possible to work with over a hundred different materials, from ceramics to cells. In the simplest case, design mining assumes no
prior knowledge and builds an initial model of the design space through the testing of 3D
printed designs, whether specified by human and/or machine. Optimisation techniques,
such as evolutionary algorithms (EAs), are then used to find the optima within the data
mining model of the collected data; the model which maps design specifications to performance is inverted and suggested good solutions identified. These are then 3D printed
and tested. The resulting data are added to the existing data and the process repeated.
Over time the model—built solely from physical prototypes tested appropriately for the
task requirements—captures the salient features of the design space, thereby enabling the
discovery of high-quality (novel) solutions. Such so-called surrogate models have also
long been used in optimisation for cases when simulations are computationally expensive.
Their use with 3D printing opens new ways to exploit optimisation in the design of physical objects directly, whilst raising a number of new issues over the simulation case.
This approach of constantly producing working prototypes from the beginning of the
design process shares resemblance to agile software engineering [43]: requirements are
identified at the start, even if only partially, and then corresponding tests created, which
are then used to drive the design process via rapid iterations of solution creation and
evaluation. The constant supply of (tangible) prototypes enables informed sharing with,
and hence feedback from, those involved in other stages of the process, such as those in
manufacture or the end user. This feedback enables constant refinement of the requirements/testing and also means that aspects of the conceptual and detailed design stages
become blended. Moreover, due to the constant production of better (physical) prototypes,
aspects of the traditional manufacturing stage become merged with the design phase. The
data mining models created provide new sources of knowledge, enabling designers, manufacturers, or users, to do what-if tests during the design process to suggest solutions, the
sharing of timely/accurate information when concurrent sub-design threads are being exploited, etc. Thereafter, they serve as sources of information for further adaptive designs,
the construction of simulators/models, etc.
In contrast to human designers, who typically arrive at solutions by refining building
blocks that have been identified in highly constrained ways, computational intelligence offers a much more unconstrained and unbiased approach to exploring potential solutions.
Thus, by creating the designs directly in hardware there is the potential that complex and
subtle physical interactions can be utilised in unexpected ways where the operational principles were previously unknown. These physical effects may simply be insufficiently understood or absent from a simulator and thus otherwise unable to be exploited. Design
mining is therefore ideally suited to applications involving highly complex environments
2

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

and/or materials.
The design of modern wind farms typically begin with the blade profile optimisation
of a single isolated wind turbine through the use of computational fluid dynamics (CFD)
simulations [68], followed by optimising the site positioning of multiple copies of the same
design to minimise the negative effects of inter-turbine wake interactions [25]. Whilst CFD
simulations have been successfully applied, they are extremely computationally expensive; consequently most numerical studies perform only 2D analysis, e.g., [21], and it is
currently infeasible to perform accurate 3D simulations of a large array. Moreover, various
assumptions must be made, and accurately modelling the complex inter-turbine wake interactions is an extremely challenging task where different turbulence models can have a
dramatic effect on turbine performance [33]. CFD studies have also presented significant
differences between results even with identical geometric and flow conditions due to the
complexity of performing accurate numerical analysis [1].
In our initial pilot study we used the design mining approach to discover a pair of
novel, heterogeneous vertical-axis wind turbine (VAWT) designs through cooperative coevolution [55]. Accurate and computationally efficient modelling of the inter-turbine interactions is extremely difficult and therefore the area is ideally suited to the design mining
approach. More recently, we have begun to explore the performance of relevant techniques
from the literature within the context of design mining. Following [10], the pilot study used
multi-layered perceptrons (MLPs) [59] for the surrogate modelling. Using the data from
that study, we have subsequently shown that MLPs appear a robust approach in comparison to a number of well-known techniques [56]. That is, MLPs appear efficient at capturing
the underlying structure of a design space from the relatively small amount of data points
a physical sampling process can be expected to generate. In this paper we begin by continuing the line of enquiry, here focusing upon the coevolutionary nature of the design
process when it is decomposed into concurrent sub-design threads due to the overall complexity of the task. Using an abstract, tuneable model of coevolution we consider strategies
to sample sub-thread designs for whole system testing and how best to construct and use
surrogate models within the coevolutionary scenario. Drawing on our findings, the paper
then describes the effective design of a more complex array of VAWT than our pilot study.

2
2.1

Background
Evolving Physical Systems

As we have reviewed elsewhere [55], there is a small amount of work considering the
evolutionary design of physical systems directly, stretching back to the origins of the discipline [8, 51, 19, 57]. Well-known examples include robot controller design [45]; the evolution of vertebrate tail stiffness in swimming robots [42]; adaptive antenna arrays [4]; electronic circuit design using programmable hardware [66]; product design via human provided fitness values [28]; chemical systems [65]; unconventional computers [27]; robot embodied evolution [22]; drug discovery [64]; functional genomics [39]; adaptive optics [63];
quantum control [36]; fermentation optimisation [18]; and the optimisation of analytical
instrumentation [46]. A selection of multiobjective case studies can be found in [40]. Examples of EAs incorporating the physical aerodynamic testing of candidate solutions include
the optimisation of jet nozzles [57, 62], as well as flapping [2, 31, 48] and morphing [7]
wings. More recent fluid dynamics examples include [50, 23, 5].

3

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

Lipson and Pollack [41] were the first to exploit the use of 3D printing in conjunction
with an EA, printing mobile robots with embodied neural controllers that were evolved using a simulation of the mechanics and control. Rieffel and Sayles’ [58] use of an interactive
EA to 3D print simple shapes is particularly relevant to the work presented here. As noted
above, in this paper we adopt an approach where relatively simple and tuneable simulations of the basic evolutionary design scenario are used to explore the general performance
of different algorithmic approaches before moving to the physical system. This can be seen
as somewhat akin to the minimalist approach proposed by Jakobi [34] for addressing the
so-called reality gap in evolutionary robotics, although further removed from the full details of the physical system. Surrogate models are then used to capture the underlying
characteristics of the system to guide design.

2.2

Cooperative Coevolution and Surrogates

Cooperative coevolution decomposes a global task into multiple interacting sub-component
populations and optimises each in parallel. In the context of a design process, this can be
seen as directly analogous to the use of concurrent sub-threads. The first known use of
cooperative coevolution considered a job-shop scheduling task [32]. Here solutions for individual machines were first evaluated using a local fitness function before being partnered
with solutions of equal rank in the other populations to create a global solution for evaluation. Bull and Fogarty [11] subsequently presented a more general approach wherein the
corresponding newly created offspring solutions from each population are partnered and
evaluated. Later, Potter and De Jong [53] introduced a round-robin approach with each
population evolved in turn, which has been adopted widely. They explored using the current best individual from each of the other populations to create a global solution, before
extending it to using the best and a random individual from the other population(s). These
two partnering strategies, along with others, were compared under their round-robin approach and found to be robust across function/problem types [9]. We used the round-robin
approach and partnering with the best individual in our pilot study and return to it here
with the focus on learning speed, i.e., how to minimise the number of (timely/costly) fitness evaluations whilst learning effectively.
As EAs have been applied to ever more complex tasks, surrogate models (also known
as meta-models) have been used to reduce the optimisation time. A surrogate model,
y = f (~x), can be formed using a sample D of evaluated designs N , where ~x is the genotype describing the design morphology and y is the fitness/performance. The model is
then used to compute the fitness of unseen data points ~x ∈
/ D, thereby providing a cheap
approximation of the real fitness function for the EA to use. Evaluations with the real fitness function must continue to be performed periodically otherwise the model may lead
to premature convergence on local optima (see Jin [35] for an overview). There has been
very little prior work on the use of surrogates in a coevolutionary context: they have been
shown capable of solving computationally expensive optimisation problems with varying
degrees of epistasis more efficiently than conventional coevolutionary EAs (CEAs) through
the use of radial basis functions [49] and memetic algorithms [24]. Remarkably, in 1963
Dunham et al. [19], in describing the evolutionary design of physical logic circuits/devices,
briefly note (without giving details): “It seemed better to run through many ‘generations’
with only approximate scores indicating progress than to manage a very few ‘evolutions’
with rather exact statements of position.”
Our aforementioned pilot study is the first known use of coevolutionary design without
4

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

simulation. As noted above, we have recently compared different modelling techniques by
which to construct surrogates for coevolution. In this paper we further consider how best
to train and use such models.

2.3

The NKCS Model

Kauffman and Johnsen [38] introduced the abstract NKCS model to enable the study of
various aspects of coevolution. In their model, an individual is represented by a genome
of N (binary) genes, each of which depends epistatically upon K other randomly chosen
genes in its genome. Thus increasing K, with respect to N , increases the epistatic linkage,
increasing the ruggedness of the fitness landscapes by increasing the number of fitness
peaks, which increases the steepness of the sides of fitness peaks and decreases their typical heights. Each gene is also said to depend upon C randomly chosen traits in each of
the other X species with which it interacts, where there are S number of species in total.
The adaptive moves by one species may deform the fitness landscape(s) of its partner(s).
Altering C, with respect to N , changes how dramatically adaptive moves by each species
deform the landscape(s) of its partner(s). The model assumes all inter- and intragenome
interactions are so complex that it is appropriate to assign random values to their effects on
fitness. Therefore, for each of the possible K + (X × C) interactions, a table of 2K+(X×C)+1
fitnesses is created for each gene, with all entries in the range 0.0 to 1.0, such that there is
one fitness for each combination of traits. The fitness contribution of each gene is found
from its table; these fitnesses are then summed and normalised by N to give the selective
fitness of the total genome for that species. Such tables are created for each species (see
example in Figure 1; the reader is referred to Kauffman [37] for full details). This tuneable model has previously been used to explore coevolutionary optimisation, particularly
in the aforementioned comparison of partnering strategies [9]. We similarly use it here to
systematically compare various techniques for the design mining approach.
That is, each species is cast as a sub-thread of an overall design task, thereby enabling
examination of the effects from varying their number (S), their individual complexity (K),
and the degree of interdependence between them (C). The fitness calculations of each
species are combined to give a global system performance.

2.4

Evolving Wind Farms

As we have reviewed elsewhere [56], techniques such as EAs have been used to design
wind turbine blades using CFD simulations, some in conjunction with surrogate models,
e.g., Chen et al. [14]. EAs have also been extensively used to optimise the turbine positioning within wind farms, e.g., Mosetti et al. [44]. Most work has focused on arrays
of homogeneous turbines, however wind farms of heterogeneous height have recently
gained attention as a means to improve the overall power output for a given number of
turbines [15, 20, 13]. Chamorro et al. [12] explored horizontal-axis wind turbine (HAWT)
farms with large and small turbines positioned alternately. They found that size heterogeneity has positive effects on turbulent loading as a result of the larger turbines facing a
more uniform turbulence distribution and the smaller turbines operating under lower turbulence levels. Craig et al. [17] have demonstrated a similar potential for heterogeneous
height VAWT wind farms. Chowdhury et al. [16] optimised layouts of HAWT with heterogeneous rotor diameters using particle swarm optimisation and found that the optimal
combination of turbines with differing rotor diameters significantly improved the wind
5

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

N =3 K=1
Species s1
1
n1

C=1

S=2

0

1

n2

n1

X=1
Species s2
1
n2

1

0

n3

n3

Species s1 gene n1
s1n1 s1n3 s2n1 fitness
0
0
0
0.57
0
0
1
0.12
0.09
0
1
0
0.16
0
1
1
0.44
1
0
0
0.66
1
0
1
1
1
0
0.33
0.44
1
1
1

Species s1 gene n2
s1n2 s1n1 s2n3 fitness
0
0
0
0.11
0
0
1
0.32
0.68
0
1
0
0.30
0
1
1
0.19
1
0
0
0.77
1
0
1
1
1
0
0.21
0.23
1
1
1

Species s1 gene n3
s1n3 s1n2 s2n3 fitness
0
0
0
0.75
0
0
1
0.42
0.25
0
1
0
0.28
0
1
1
0.13
1
0
0
0.58
1
0
1
1
1
0
0.66
0.91
1
1
1

Figure 1: The NKCS model: Each gene is connected to K randomly chosen local genes (solid lines)
and to C randomly chosen genes in each of the X other species (dashed lines). A random fitness
is assigned to each possible set of combinations of genes. The fitness of each gene is summed and
normalised by N to give the fitness of the genome. An example NKCS model is shown above and
example fitness tables are provided for species s1, where the s1 genome fitness is 0.416 when s1 =
[101] and s2 = [110].

farm efficiency. Recently, Xie et al. [67] have performed simulations of wind farms with
collocated VAWT and HAWT, showing the potential to increase the efficiency of existing
HAWT wind farms by adding VAWTs.
Conventional offshore wind farms require support structures fixed rigidly to the seabed,
which currently limits their deployment to depths below 50 m. However, floating wind
farms can be deployed in deep seas where the wind resources are strongest, away from
shipping lanes and wind obstructions [52]. See Borg et al. [6] for a recent review of floating
wind farms. They note that floating VAWT have many advantages over HAWT, e.g., lower
centre of gravity, increased stability, and increased tolerance of extreme conditions. The design of floating wind farms is especially challenging since platform oscillations also need
to be considered. EAs are beginning to be used to explore the design of floating support
structures, e.g., Hall et al. [26] optimised HAWT platforms using a simple computational
model to provide fitness scores. Significantly, all of these works have involved the use of
CFD simulations with varying degrees of fidelity.
Our pilot study found that asymmetrical pairs of VAWTs can be more efficient than similar symmetrical designs. In this paper, we extend our initial work to the heterogeneous
design of an array of 6 closely positioned VAWT, which is currently effectively beyond
the capabilities of accurate 3D CFD simulation; the approach performs optimisation in
the presence of non-uniform wind velocity, complex inter-turbine wake effects, and multidirectional wind flow from nearby obstacles, which is extremely difficult to achieve accurately under high fidelity CFD simulation. In addition, previously the combined rotational
6

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

Algorithm 1: Coevolutionary genetic algorithm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

for each species do
initialise population;
select a random representative for each other species;
for each individual in population do
evaluate;
end
end
while evaluation budget not exhausted do
for each species do
create an offspring using genetic operators;
select a representative for each other species;
evaluate the offspring;
add offspring to species population;
end
end

speed was simply used as the objective measure, whereas here we use the total angular
kinetic energy of the array, which includes both mass and speed of rotation, and we use a
more flexible spline representation that enables the potential exploitation of both drag and
lift forces in conjunction with inter-turbine flow and turbulence from nearby obstacles.

3

Surrogate-assisted Coevolution

The basic coevolutionary genetic algorithm (CGA) is outlined in Algorithm 1. Initially all
individuals in each of the species/populations must be evaluated. Since no initial fitness
values are known, a random individual is chosen in each of the other populations to form
a global solution, however if there is a known good individual then that individual can
be used instead. The CGA subsequently cycles between populations, selecting parents via
tournament and creating offspring with mutation and/or crossover. The offspring are then
evaluated using representative members from each of the other populations. At any point
during evolution, each individual is assigned the maximum team fitness achieved by any
team in which it has been evaluated, where the team fitness is the sum of the fitness scores
of each collaborating member.
For the basic surrogate-assisted CGA (SCGA) used in this paper, the CGA runs as normal except that each time a parent is chosen, λm number of offspring are created and then
evaluated with an artificial neural network surrogate model; the single offspring with the
highest approximated fitness is then evaluated on the real fitness function in collaboration with the fittest solution (best partner) in each other populations. See outline in Algorithm 2. The model is trained using backpropagation for T epochs; where an epoch
consists of randomly selecting, without replacement, all individuals from a species population archive and updating the model weights at a learning rate β. The model weights
are (randomly) reinitialised each time before training due to the temporal nature of the
collaborating scheme.
For both CGA and SCGA, a tournament size of 3 takes place for both selection and
replacement. A limited form of elitism is used whereby the current fittest member of the

7

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

Algorithm 2: Surrogate-assisted coevolutionary genetic algorithm
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24

for each species do
initialise population;
select a random representative for each other species;
for each individual in population do
evaluate;
archive;
end
end
while evaluation budget not exhausted do
for each species do
initialise model;
train model on species archive;
select parent(s) using tournament selection;
for λm number of times do
create an offspring using genetic operators;
predict offspring fitness using the model;
end
select the offspring with the highest model predicted fitness;
select a representative for each other species;
evaluate the offspring;
add offspring to species population;
archive offspring;
end
end

population is given immunity from deletion.

4

NKCS Experimentation

For the physical experiments performed in this paper, 6 VAWT are positioned in a row.
Therefore, to simulate this interacting system, we explore the case where S = 6 and each
species is affected by its proximate neighbours, i.e., X = 1 for the first and sixth species,
and X = 2 for all others. Figure 2 illustrates the simulated topology. For all NKCS simulations performed, P = 20, N = 20, per allele mutation probability µ = 5%, and crossover
probability is 0%. Where a surrogate model is used, the model parameters are: N input
neurons, H = 10 hidden neurons, 1 output neuron, λm = 1000, T = 50, β = 0.1. All
results presented are an average of 100 experiments consisting of 10 coevolutionary runs
on 10 randomly generated NKCS functions. The performance of all algorithms are shown
on four different K and C values, each representing a different point in the range of interand intra-population dependence.
s1

s2

s3

s4

s5

s6

Figure 2: NKCS topology. Arrows indicate inter-species connectivity (X).

8

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

4.1

Coevolution

We begin by comparing the traditional approach of partnering with the elite member in
each other species (CGA-b) with performing additional evaluations (CGA-br), and explore
any benefits to overall learning speed from refreshing the population fitness values as the
fitness landscapes potentially shift; that is, all individuals in the other species populations
are re-evaluated in collaboration with the current elite members each time a new fittest
individual is found (CGA-re).
As noted above, after Potter and De Jong [53], traditionally CEAs consider each population in turn. Thus, if S = 10 and each species population creates one offspring per turn,
then 10 evaluations are required for the whole system. However, at the other end of this
scale each population simultaneously generates a new individual each turn, and evaluates
all offspring at once [11], therefore requiring only one evaluation for the whole system.
Varying the number of offspring collaborators in this way is much like varying the systemlevel mutation rate. Therefore, we explore the case where all species offspring are created
and tested simultaneously (CGA-o).
In summary, the NKCS model is used to examine the following four different collaboration schemes:
• CGA-b: each offspring is evaluated in collaboration with the current best individual
in each of the other species populations.
• CGA-br: each offspring is evaluated as in CGA-b, and additionally with a random
member in each of the other populations.
• CGA-re: each offspring is evaluated as in CGA-b, and all populations are re-evaluated
when one makes a progress.
• CGA-o: offspring are created in each species simultaneously and evaluated together.
Figure 3 and Table 1 present the performance of the collaboration schemes. As can be
seen, during the early stages of evolution, the mean best fitness of CGA-b is significantly
greater than CGA-br and CGA-re for all tested K, C values, showing that performing additional evaluations results in a lower fitness compared with the approach of only collaborating with the elite members. At the end of the experiments, the three approaches
generally reach approximately similar performance, suggesting that there is no penalty for
this increase in early learning speed. For the case of both lower inter- and intra-population
epistasis CGA-br performs better, which supports findings reported elsewhere [53, 9]. The
approach of evaluating all offspring simultaneously (CGA-o) appears to be detrimental to
performance under the simulated conditions.

4.2

Surrogate-assisted Coevolution

In this section we compare the performance of CGA-b with the standard surrogate-assisted
version (SCGA-b). In addition, we compare the performance of the standard surrogate
approach where the models are presented only the N genes from their own species (SCGAb) with the case where the models are presented all N × S partner genes (SCGA-a). We
also compare the standard approach of evaluating the most promising of λm offspring
stemming from a single parent (SCGA-b) with searching the same number of offspring

9

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

N=20 K=6 C=2 S=6
4.2

4.0

4.0

3.8

3.8

Fitness

Fitness

N=20 K=2 C=2 S=6
4.2

3.6
CGA-b
CGA-br
CGA-re
CGA-o

3.4

3.6
CGA-b
CGA-br
CGA-re
CGA-o

3.4

3.2

3.2
0

500 1000 1500 2000 2500 3000 3500 4000
Evaluations

0

N=20 K=6 C=8 S=6

4.2

4.2

4.0

4.0

3.8

3.8

Fitness

Fitness

N=20 K=2 C=8 S=6

3.6
CGA-b
CGA-br
CGA-re
CGA-o

3.4

500 1000 1500 2000 2500 3000 3500 4000
Evaluations

3.6
CGA-b
CGA-br
CGA-re
CGA-o

3.4

3.2

3.2
0

500 1000 1500 2000 2500 3000 3500 4000
Evaluations

0

500 1000 1500 2000 2500 3000 3500 4000
Evaluations

Figure 3: CGA mean best fitness. Results are an average of 100 experiments consisting of 10 coevolutionary runs of 10 random NKCS functions. CGA-b (triangle), CGA-br (circle), CGA-re (square), and
CGA-o (diamond).

where λm tournaments are performed to select parents that each create a single offspring
(SCGA-p).
Furthermore, due to the highly temporal nature of the individuals undergoing evaluation needing to partner with the elite members in each of the other species, it is possible
that the surrogate model performance may degrade by using the entire data set for training. For example, individuals from the initial population may perform very differently
when partnered with the elite individuals from later generations. A windowed approach
of using only the most recent P evaluated individuals in each species for training seemed
promising in a prior experiment coevolving a pair of VAWT, however was not statistically
significant in practice [56]. Here we explore the effect for larger numbers of species where
the temporal variance is potentially much higher (SCGA-bw).
In summary, the algorithms tested:
• SCGA-b: standard SCGA.
• SCGA-a: global surrogate model construction.
• SCGA-p: λm parents are selected via tournaments, each creating a single offspring
and the most promising as suggested by the model is evaluated.
• SCGA-bw: most recent P evaluated individuals used for training.

10

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

Table 1: CGA best fitnesses after 480 and 3600 evaluations (averages of 100). The mean is
highlighted in boldface where it is significantly different from CGA-b using a Mann-Whitney U test
at the 95% confidence interval.

CGA-b CGA-br
After 480 evaluations:
K2C2
3.8449
3.7141
K2C8
3.7767
3.6937
K6C2
3.8338
3.7359
K6C8
3.7626
3.6765
After 3600 evaluations:
K2C2
4.1464
4.1536
K2C8
4.0700
4.0949
K6C2
4.1395
4.1321
K6C8
4.0390
4.0403

CGA-re

CGA-o

3.6066
3.6387
3.6423
3.6105

3.8163
3.6424
3.7617
3.5761

3.9757
4.0469
4.0254
3.9926

4.1417
4.0269
4.1320
3.9279

Table 2: SCGA best fitnesses after 480 and 3600 evaluations (averages of 100). The mean is
highlighted in boldface where it is significantly different from SCGA-b using a Mann-Whitney U
test at the 95% confidence interval.

SCGA-b CGA-b
After 480 evaluations:
K2C2
3.9094
3.8449
K2C8
3.8214
3.7767
K6C2
3.9160
3.8338
K6C8
3.7847
3.7626
After 3600 evaluations:
K2C2
4.1392
4.1464
K2C8
4.0974
4.0700
K6C2
4.1733
4.1395
K6C8
4.0596
4.0390

SCGA-a

SCGA-p

SCGA-bw

3.8633
3.7537
3.8175
3.7750

3.9070
3.8477
3.8987
3.7851

3.9071
3.7778
3.8794
3.7252

4.1521
4.0558
4.1254
4.0571

4.1578
4.0970
4.1657
4.0630

4.2027
4.1383
4.2244
4.0849

The results are presented in Figure 4 and Table 2. As can be seen, the use of the surrogate
model to identify more promising offspring clearly increases learning early in the search.
For example, the mean best fitness of SCGA-b is significantly greater for all tested K, C
values with the exception of very high inter- and intra-population epistasis. At the end
of the experiments, similar optima are reached, showing that there is no penalty for this
increase in early learning speed. The benefit of the divide-and-conquer strategy to model
building can be seen by comparing SCGA-b with SCGA-a. The mean best fitness of SCGAb is significantly greater than SCGA-a for all four K, C values after 480 evaluations, with
the exception of very high K and C; showing that purely local models are both efficient
and scalable. Comparing SCGA-b with SCGA-p shows that the simple method of using the
model we presented in our pilot study is quite robust as there is no significant difference.
Finally, the windowed training scheme (SCGA-bw) was found to be significantly worse
than using all data (SCGA-b) during the early stages of evolution, however later in the
experiments reached a higher optima.

11

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

N=20 K=2 C=2 S=6

4.2

4.0

4.0

3.8
SCGA-b
SCGA-a
SCGA-p
SCGA-bw
CGA-b

3.4
3.2

0

3.8

3.4
3.2

500 1000 1500 2000 2500 3000 3500 4000
Evaluations

4.2

4.0

4.0

3.8
SCGA-b
SCGA-a
SCGA-p
SCGA-bw
CGA-b

3.4
3.2

0

0

3.8
SCGA-b
SCGA-a
SCGA-p
SCGA-bw
CGA-b

3.6
3.4
3.2

500 1000 1500 2000 2500 3000 3500 4000
Evaluations

500 1000 1500 2000 2500 3000 3500 4000
Evaluations
N=20 K=6 C=8 S=6

4.4

4.2

3.6

SCGA-b
SCGA-a
SCGA-p
SCGA-bw
CGA-b

3.6

N=20 K=2 C=8 S=6

4.4

Fitness

Fitness

4.2

3.6

N=20 K=6 C=2 S=6

4.4

Fitness

Fitness

4.4

0

500 1000 1500 2000 2500 3000 3500 4000
Evaluations

Figure 4: SCGA mean best fitness. Results are an average of 100 experiments consisting of 10 coevolutionary runs of 10 random NKCS functions. SCGA-b (triangle), SCGA-a (circle), SCGA-p (square),
SCGA-bw (star), and CGA-b (diamond).

5
5.1

VAWT Wind Farm Design
Methodology

A single 2-stage 2-blade VAWT candidate with end plates is here created as follows. End
plates are drawn in the centre of a Cartesian grid with a diameter of 35 mm and thickness
of 1 mm. A central shaft 70 mm tall, 1 mm thick, and with a 1 mm hollow diameter is also
drawn in the centre of the grid in order to mount the VAWT for testing. The 2D profile of a
single blade on 1 stage is represented using 5 (x, y) co-ordinates on the Cartesian grid, i.e.,
10 genes, x1 , y1 , ..., x5 , y5 . A spline is drawn from (x1 , y1 ) to (x3 , y3 ) as a quadratic Bézier
curve, with (x2 , y2 ) acting as the control point. The process is then repeated from (x3 , y3 )
to (x5 , y5 ) using (x4 , y4 ) as control. The thickness of the spline is a fixed size of 1 mm. The
co-ordinates of the 2D blade profile are only restricted by the plate diameter; that is, the
start and end position of the spline can be located anywhere on the plate.
To enable z-axis variation, 3 additional co-ordinates (i.e., 6 genes) are used to compute
cubic Bézier curves in the xz and yz planes that offset the 2D profile. The xz-plane offset
curve is formed from an x offset=0 on the bottom plate to an x offset=0 on the top plate
using control points (zx1 , z1 ) and (zx2 , z2 ). The yz-plane offset curve is formed in the same
way with zy1 and zy2 control points, however reusing z1 and z2 to reduce the number of
parameters to optimise.
Furthermore, an extra gene, r1 , specifies the degree of rotation whereby the blades of
12

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

(a) Seed design; genome: x1 = 15.1, y1 = 15.1,
x2 = 22.1, y2 = 15.1, x3 = 25.7, y3 = 15.9,
x4 = 32.1, y4 = 16.1, x5 = 32.1, y5 = 27.1,
zx1 = 0, zx2 = 0, zy1 = 0, zy2 = 0, z1 = 20,
z2 = 27.2, r1 = 0.

(b) Seed design printed by a 3D printer; 35 mm
diameter; 70 mm tall; 7 g; 45-min printing time at
0.3 mm resolution.

Figure 5: Example VAWT.

1-stage are rotated from one end plate to the next through the z-axis to ultimately 0 − 180°.
Thus, a total of 17 genes specify the design of a candidate VAWT. The blade is then duplicated and rotated 180° to form a 2-bladed design. The entire stage is then duplicated
and rotated 90° to form the second stage of the VAWT; see example design in Figure 5(a).
When physical instantiation is required, the design is fabricated by a 3D printer (Replicator 2; MakerBot Industries LLC, USA) using a polylactic acid (PLA) bioplastic at 0.3 mm
resolution. Figure 5(b) shows the VAWT after fabrication.
In order to provide sufficient training data for the surrogate model, initially CGA-b
proceeds for 3 generations before the model is used, i.e., a total of 360 physical array evaluations with 60 evaluated individuals in each species. S = 6 species are explored, each with
P = 20 individuals, a per allele mutation probability, µ = 25% with a mutation step size,
σ1 = 3.6 (mm) for co-ordinates and σ2 = 18° for r1 , and a crossover probability of 0%. Each
species population is initialised with the example design in Figure 5(a) and 19 variants mutated with µ = 100%. The individuals in each species population are initially evaluated in
collaboration with the seed individuals in the other species populations. Thereafter, CGA-b
runs as normal by alternating between species after a single offspring is formed and evaluated with the elite members from the other species. After 3 generations, SCGA-b is used for
an additional generation. To explore whether there is any benefit in windowing the training data, the SCGA is subsequently rerun for 1 generation starting with the same previous
CGA-b populations, however using only the current species population for model training
(SCGA-bw). The model parameters: 17 input neurons, H = 10 hidden neurons, 1 output
neuron, λm = 1000, T = 1000, β = 0.1. Each VAWT is treated separately by evolution and
approximation techniques, i.e., heterogeneous designs could therefore emerge.
The fitness, f , of each individual is the total angular kinetic energy of the collaborating
array,
S
X
f=
KEi
(1)
i=1

13

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

Figure 6: Experimental setup with 6 VAWT. Frame width 275 mm, height 235 mm. Vertical support
pillars 10 × 15 × 235 mm. Upper and lower cross bars each with height 40 mm, thickness 1 mm, and
protruding 8 mm. VAWT freely rotate on rigid metal pins 1 mm in diameter and positioned 42.5 mm
adjacently.

where the angular kinetic energy (J), KE, of an individual VAWT,
KE =

1 2
Iω
2

(2)

1
2
2
with angular velocity (rad/s), ω = rpm
60 2π, and moment of inertia (kg·m ), I = 2 mr with
m mass (kg), and r radius (m).
The rotational speed (rpm) is here measured using a digital photo laser tachometer
(PCE-DT62; PCE Instruments UK Ltd) by placing a 10 × 2 mm strip of reflecting tape on
the outer tip of each VAWT and recording the maximum achieved over the period of ∼ 30 s
during the application of wind generated by a propeller fan.
Figure 6 shows the test environment with the 30 W, 3500 rpm, 304.8 mm propeller fan,
which generates 4.4 m/s wind velocity, and 6 turbines mounted on rigid metal pins 1 mm
in diameter and positioned 42.5 mm adjacently and 30 mm from the propeller fan. That is,
there is an end plate separation distance of 0.2 diameters between turbines. It is important
to note that the wind generated by the fan is highly turbulent with non-uniform velocity and direction across the test platform, i.e., each turbine position receives a different
amount of wind energy from different predominant directions and wind reflecting from
the test frame may cause multi-directional wind flow. Thus, the designs evolved under
such conditions will adapt to these exact environmental circumstances.

14

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

5.2

Results

Each generation consisted of 120 fabrications and array evaluations. After evaluating all
individuals in the initial species populations, no mutants were found to produce a greater
total kinetic energy than the seed array. After 1 evolved CGA-b generation, the fittest array
combination generated a greater total kinetic energy of 7.6 mJ compared with the initial
seed array, which produced 5.9 mJ. A small increase in total mass of 42 g to 44.8 g was also
observed. After 2 evolved CGA-b generations, the fittest array generated a total kinetic
energy of 10 mJ with a further small increase in total mass to 45.6 g. SCGA-b was then
used for 1 additional generation and produced a total kinetic energy of 12.2 mJ with a
further increase in mass to 49.3 g.
The fittest SCGA-bw array produced a greater total kinetic energy of 14.8 mJ than
SCGA-b. Furthermore, the SCGA-bw mean kinetic energy (M = 12.27, SD = 1.29, N =
120) was significantly greater than SCGA-b (M = 10.56, SD = 0.93, N = 120) using a
two-tailed Mann-Whitney test (U = 2076, p ≤ 0.001), showing that windowing the model
training data was found to be beneficial in this experiment. SCGA-b and SCGA-bw appear
to have predominantly exploited different components of the fitness measure, with SCGAb finding heavier turbine designs (+8%) that maintain approximately the same rpm (+3%),
whereas SCGA-bw discovered designs that were approximately the same mass (+0.6%)
with significantly increased rpm (+22%).
Figure 7(a) shows the total angular kinetic energy of the fittest arrays each generation;
Figure 7(b) shows the total mass, and Figure 7(c) the total rpm. The cross sections of the
fittest array designs can be seen in Figures 8–12. When the position of the final evolved
SCGA-b array was inverted, i.e., the first species design being swapped with the sixth,
second swapped with fifth, etc., a decrease in total rpm of 17.8% was observed, causing a
reduction in total KE of 36.7%. A similar test was performed for the final evolved SCGAbw array and the total rpm decreased by 14% with a consequential decrease in total KE of
22%, showing that evolution has exploited position-specific characteristics.
It is interesting to note the similarity of some of the evolved VAWTs with human engineered designs. Bach [3] performed one of the earliest morphological studies of Savonius
VAWT and found increased aerodynamic performance with a blade profile consisting of a
2/3 flattened trailing section and a larger blade overlap to reduce the effect of the central
shaft, which is similar to the fourth species designs in Figures 10(d) and 12(d). The evolved
VAWT in the second species, e.g., Figures 10(b) and 12(b), overall appear more rounded
and similar to the classic S-shape Savonius design [60]. There appears to be little twist rotation along the z-axis of the evolved designs, which may be a consequence of the initial
seeding or due to the test conditions having strong and persistent wind velocity from a single direction; that is, starting torque in low wind conditions is not a component of fitness
in these experiments where twisted designs may be more beneficial.

6

Conclusions

Design mining represents a methodology through which the capabilities of computational
intelligence can be exploited directly in the physical world through 3D printing. Our previous pilot study [55] considered the parallel design of two interacting objects. In this paper
we have used a well-known abstract model of coevolution to explore and extend various
techniques from the literature, with an emphasis on reducing the number of fitness function evaluations. Our results suggest the round-robin evaluation process using the best
15

20

50

15

Total mass (g)

Total angular kinetic energy (mJ)

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

10
5
0
100

SCGA-bw
SCGA-b
CGA-b
150

200

250 300 350
Fabrications

400

450

48
46
44
SCGA-bw
SCGA-b
CGA-b

42
40
100

500

150

200

Total rotation speed (rpm)

(a) Array angular kinetic energy.

250 300 350
Fabrications

400

450

500

(b) Array mass.

4000
3500
3000
SCGA-bw
SCGA-b
CGA-b

2500

2000
100 150 200 250 300 350 400 450 500
Fabrications

(c) Array rotation speed.

Figure 7: Performance of the fittest evolved VAWT arrays. CGA-b (circle), SCGA-b (triangle), SCGAbw (square). The SCGAs are used only after 360 evaluations (i.e., 3 generations) of the CGA since
sufficient training data is required.

solution in each other population is robust [53], as is our previously presented sampling
method of surrogate models built using strictly population specific data. It has also been
shown that the same techniques remain effective when scaling to 6 interacting species.
These findings were than applied to a more complex version of the wind turbine design
task considered in our pilot study, primarily moving from designing a pair of heterogeneous VAWT to a system of 6 turbines. As noted above, the SCGA remains robust to an
increasing number of turbines since the number of inputs to the models remains constant.
Indeed, we are unaware of a real-world coevolutionary optimisation task of this scale with
or without surrogate models.
The VAWT spline representation used here is also much more flexible than the simple
integer approach used previously, enabling the exploration of designs where the blades
are not attached to the central shaft. This has enabled designs to emerge that not only
exploit or compensate for the wind interaction with the central shaft, but also the effect of
mass and vibrational forces as the turbines freely rotate around the mounted pins at high
speed. That is, it has been shown possible to exploit the fan-generated wind conditions
in the environment, including the complex inter-turbine turbulent flow conditions, and
position-specific wind velocity, to design an array of 6 different turbines that work together
collaboratively to produce the maximum angular kinetic energy. Note that the starting
design for the turbines was based upon a standard commercial design and performance in
16

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

the array was seen to double over the time allowed.
3D printing provides a very flexible way to rapid-prototype designs for testing. One
of the most significant benefits of the technology is a ‘complexity paradox’ wherein the
complexity of the printed shape is highly uncorrelated with production time/cost. With
conventional manufacturing, the more complex an object is, the more it costs to fabricate
(especially when sub-components require complex assembly processes.) However, with
3D printing, the time and cost to fabricate an object mostly depends on the amount of material used. Moreover, the more complex a shape is, the more numerous the spaces (voids)
that exist between components, and thus the smaller the quantity of material required.
There is thus a synergy between computational intelligence techniques that can search a
wide variety of complex shapes in a complex environment whilst also exploring the effects
of novel materials. Here only PLA plastic was used to fabricate designs, however there are
now over a hundred different materials that 3D printers can use, ranging from cells to titanium. Future work may explore the use of flexible materials and multi-material designs,
which may result in very different designs of future wind farms. In addition, 3D printing
can produce designs at different fidelity, such as slower more accurate prints for subtle optimisation or rapid coarse designs for quick evaluation. Fabrication can also be parallelised
with multiple printers, e.g., a different printer for each species.
Future work may also use the power generated as the objective under different wind
conditions specific to the target environment, e.g., low cut-in speed; the design of larger
wind farms, including turbine location, multiple rows of turbines, and collocation of VAWT
and HAWT; the exploration of alternative surrogate models to reduce the number of fabrications required; alternative shape representations that can enable increased morphological freedom, including varying the number of blades, e.g., supershapes [54]; and the use
of novel fabrication materials. In addition, future avenues of research may include arrays
of collaborating variable-speed wind turbines, turbines located on roof tops, and floating
wind turbines. The use of adaptive design representations, allowing the number of shape
parameters to increase as necessary (e.g., [47]), which will involve adaptive/coevolved
surrogate models (e.g., [61]) will also be of interest.
The issue of scalability remains an important area of future research. Changes in dimensionality may greatly affect performance, however it remains to be seen how the performance will change in the presence of other significant factors such as turbine wake interactions. Larger 3D printing and testing capabilities could be used to design larger turbines
using the same method, although with longer fabrication and testing times. However,
3D printing is a rapidly developing technology capable of fabricating increasingly bigger
parts with decreasing production times; for example, the EBAM 300 (Sciaky Ltd., USA)
can produce a 10 ft long titanium aircraft structure in 48 hrs. On the micro-scale, turbines
with a rotor diameter smaller than 2 mm can be used to generate power, e.g., for wireless sensors [29], and in this case high precision 3D printers would be required. Recently,
3D printing capabilities have been added to aerial robots to create flying 3D printers [30],
which may eventually enable swarms of robots to rapidly create, test, and optimise designs
in areas that are difficult to access.
The design mining approach outlined here provides a general and flexible framework
for engineering design with applications that cannot be simulated due to the complexity of
materials or environment. We anticipate that in the future, such approaches will be used
to create highly unintuitive yet efficient bespoke solutions for a wide range of complex
engineering design applications.

17

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

(a) s1

(b) s2

(c) s3

(d) s4

(e) s5

(f) s6

Figure 8: Cross sections of the fittest VAWT array after 1 CGA-b generation, i.e., initial population.
No mutants resulted in greater total KE than the seed array. Total KE = 5.9 mJ, m = 42 g, 2332 rpm.

(a) s1

(b) s2

(c) s3

(d) s4

(e) s5

(f) s6

Figure 9: Cross sections of the fittest evolved VAWT array after 2 CGA-b generations. Total KE =
7.6 mJ, m = 44.8 g, 2677 rpm.

(a) s1

(b) s2

(c) s3

(d) s4

(e) s5

(f) s6

Figure 10: Cross sections of the fittest evolved VAWT array after 3 CGA-b generations. Total KE =
10 mJ, m = 45.6 g, 3004 rpm.

(a) s1

(b) s2

(c) s3

(d) s4

(e) s5

(f) s6

Figure 11: Cross sections of the fittest evolved VAWT array after 3 CGA-b generations plus 1 SCGA-b
generation. Total KE = 12.2 mJ, m = 49.3 g, 3094 rpm.

(a) s1

(b) s2

(c) s3

(d) s4

(e) s5

(f) s6

Figure 12: Cross sections of the fittest evolved VAWT array after 3 CGA-b generations plus 1 SCGAbw generation. Total KE = 14.8 mJ, m = 45.9 g, 3668 rpm.

18

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

Acknowledgements
This work was supported by the Engineering and Physical Sciences Research Council under Grant EP/N005740/1, and the Leverhulme Trust under Grant RPG-2013-344. The data
used to generate the graphs are available at: http://researchdata.uwe.ac.uk/166.

References
1.

Akwa, J. V., Vielmo, H. A., & Petry, A. P. (2012). A review on the performance of Savonius wind
turbines. Renewable and Sustainable Energy Reviews, 16(5), 3054–3064.

2.

Augustsson, P., Wolff, K., & Nordin, P. (2002). Creation of a learning, flying robot by means of
evolution. In Proceedings of the Genetic and Evolutionary Computation Conference, (pp. 1279–1285).
San Francisco, CA, USA: Morgan Kaufmann.

3.

Bach, G. (1931). Untersuchungen über Savonius-rotoren und verwandte strömungsmaschinen.
Forschung auf dem Gebiet des Ingenieurwesens A, 2(6), 218–231.

4.

Becker, J. M., Lohn, J. D., & Linden, D. (2014). In-situ evolution of an antenna array with hardware
fault recovery. In Proceedings of the IEEE International Conference on Evolvable Systems, (pp. 69–76).
Piscataway, NJ, USA: IEEE Press.

5.

Benard, N., Pons-Prats, J., Periaux, J., Bugeda, G., Braud, P., Bonnet, J. P., & Moreau, E. (2016).
Turbulent separated shear flow control by surface plasma actuator: Experimental optimization
by genetic algorithm approach. Experiments in Fluids, 57(2), 22.

6.

Borg, M., Shires, A., & Collu, M. (2014). Offshore floating vertical axis wind turbines, dynamics
modelling state of the art. Part I: Aerodynamics. Renewable and Sustainable Energy Reviews, 39,
1214–1225.

7.

Boria, F., Stanford, B., Bowman, S., & Ifju, P. (2009). Evolutionary optimization of a morphing
wing with wind-tunnel hardware in the loop. AIAA Journal, 47(2), 399–409.

8.

Box, G. E. P. (1957). Evolutionary operation: A method for increasing industrial productivity.
Journal of the Royal Statistical Society: Series C (Statistical Methodology), 6(2), 81–101.

9.

Bull, L. (1997a). Evolutionary computing in multi-agent environments: Partners. In T. Bäck (Ed.)
Proceedings of the 7th International Conference on Genetic Algorithms, (pp. 370–377). San Francisco,
CA, USA: Morgan Kaufmann.

10. Bull, L. (1997b). Model-based evolutionary computing: A neural network and genetic algorithm
architecture. In Proceedings of the IEEE International Conference on Evolutionary Computation, (pp.
611–616). Piscataway, NJ, USA: IEEE Press.
11. Bull, L., & Fogarty, T. (1993). Coevolving communicating classifier systems for tracking. In R. F.
Albrecht, C. R. Reeves, & N. C. Steele (Eds.) Artificial Neural Networks and Genetic Algorithms, (pp.
522–527). Berlin, Germany: Springer.
12. Chamorro, L. P., Tobin, N., Arndt, R. E. A., & Sotiropoulos, F. (2014). Variable-sized wind turbines
are a possibility for wind farm optimization. Wind Energy, 17(10), 1483–1494.
13. Chen, K., Song, M. X., Zhang, X., & Wang, S. F. (2016). Wind turbine layout optimization with
multiple hub height wind turbines using greedy algorithm. Renewable Energy, 96(A), 676–686.
14. Chen, Y., Hord, K., Prater, R., Lian, Y., & Bai, L. (2012). Design optimization of a vertical axis
wind turbine using a genetic algorithm and surrogate models. In 12th AIAA Aviation Technology,
Integration, and Operations (ATIO) Conference and 14th AIAA/ISSMO Multidisciplinary Analysis and
Optimization Conference. Reston, VA, USA: AIAA.
15. Chen, Y., Li, H., Jin, K., & Song, Q. (2013). Wind farm layout optimization using genetic algorithm
with different hub height wind turbines. Energy Conversion and Management, 70, 56–65.

19

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

16. Chowdhury, S., Zhang, J., Messac, A., & Castillo, L. (2012). Unrestricted wind farm layout optimization (UWFLO): Investigating key factors influencing the maximum power generation. Renewable Energy, 38(1), 16–30.
17. Craig, A. E., Dabiri, J. O., & Koseff, J. R. (2016). Flow kinematics in variable-height rotating
cylinder arrays. Journal of Fluids Engineering, 138(11), 111203.
18. Davies, Z. S., Gilbert, R. J., Merry, R. J., Kell, D. B., Theodorou, M. K., & Griffith, G. W. (2000).
Efficient improvement of silage additives by using genetic algorithms. Applied and Environmental
Microbiology, 66(4), 1435–1443.
19. Dunham, B., Fridshal, R., & North, J. H. (1963). Design by natural selection. Synthese, 15(2),
254–259.
20. DuPont, B., Cagan, J., & Moriarty, P. (2016). An advanced modeling system for optimization of
wind farm layout and wind turbine sizing using a multi-level extended pattern search algorithm.
Energy, 106, 802–814.
21. Ferreira, C. S., & Geurts, B. (2015). Aerofoil optimization for vertical-axis wind turbines. Wind
Energy, 18(8), 1371–1385.
22. Ficici, S. G., Watson, R. A., & Pollack, J. B. (1999). Embodied evolution: A response to challenges
in evolutionary robotics. In J. L. Wyatt, & J. Demiris (Eds.) Proceedings of the European Workshop
on Learning Robots, vol. 1812 of LNCS, (pp. 14–22). Berlin, Germany: Springer.
23. Gautier, N., Aider, J.-L., Duriez, T., Noack, B. R., Segond, M., & Abel, M. (2015). Closed-loop
separation control using machine learning. Journal of Fluid Mechanics, 770, 442–457.
24. Goh, C. K., Lim, D., Ma, L., Ong, Y. S., & Dutta, P. S. (2011). A surrogate-assisted memetic coevolutionary algorithm for expensive constrained optimization problems. In Proceedings of the
IEEE Congress on Evolutionary Computation, (pp. 744–749). Piscataway, NJ, USA: IEEE Press.
25. González, J. S., Payán, M. B., Santos, J. M. R., & González-Longatt, F. (2014). A review and
recent developments in the optimal wind-turbine micro-siting problem. Renewable and Sustainable
Energy Reviews, 30, 133–144.
26. Hall, M., Buckham, B., & Crawford, C. (2013). Evolving offshore wind: A genetic algorithmbased support structure optimization framework for floating wind turbines. In OCEANS - Bergen,
2013 MTS/IEEE, (pp. 1–10). Piscataway, NJ, USA: IEEE Press.
27. Harding, S. L., & Miller, J. F. (2004). Evolution in materio: Initial experiments with liquid crystal.
In Proceedings of the NASA/DoD Workshop on Evolvable Hardware, (pp. 289–299). Washington DC,
USA.
28. Herdy, M. (1996). Evolution strategies with subjective selection. In Proceedings of the 4th Conference
on Parallel Problem Solving from Nature, (pp. 22–26). Berlin, Germany: Springer.
29. Howey, D. A., Bansal, A., & Holmes, A. S. (2011). Design and performance of a centimetre-scale
shrouded wind turbine for energy harvesting. Smart Materials and Structures, 20(8), 085021.
30. Hunt, G., Mitzalis, F., Alhinai, T., Hooper, P. A., & Kovac, M. (2014). 3D printing with flying
robots. In Proceedings of the IEEE International Conference on Robotics and Automation, (pp. 4493–
4499). Piscataway, NJ, USA: IEEE Press.
31. Hunt, R., Hornby, G. S., & Lohn, J. D. (2005). Toward evolved flight. In Proceedings of the Genetic
and Evolutionary Computation Conference, (pp. 957–964). New York, NY, USA: ACM.
32. Husbands, P., & Mill, F. (1991). Simulated coevolution as the mechanism for emergent planning
and scheduling. In R. K. Belew, & L. B. Booker (Eds.) Proceedings of the 4th International Conference
on Genetic Algorithms, (pp. 264–270). San Francisco, CA, USA: Morgan Kaufmann.
33. Islam, M. R., Ting, D. S.-K., & Fartaj, A. (2008). Aerodynamic models for Darrieus-type straightbladed vertical axis wind turbines. Renewable and Sustainable Energy Reviews, 12(4), 1087–1109.

20

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

34. Jakobi, N. (1997). Half-baked, ad-hoc and noisy: Minimal simulations for evolutionary robotics.
In Proceedings of the 4th European Conference on Artificial Life, (pp. 348–357). Cambridge, MA, USA:
MIT Press.
35. Jin, Y. (2011). Surrogate-assisted evolutionary computation: Recent advances and future challenges. Swarm and Evolutionary Computation, 1(2), 61–70.
36. Judson, R. S., & Rabitz, H. (1992). Teaching lasers to control molecules. Physical Review Letters,
68(10), 1500–1503.
37. Kauffman, S. A. (1993). The origins of order: Self-organisation and selection in evolution. New York,
NY, USA: Oxford University Press.
38. Kauffman, S. A., & Johnsen, S. (1991). Coevolution to the edge of chaos: Coupled fitness landscapes, poised states and coevolutionary avalanches. Journal of Theoretical Biology, 149(4), 467–505.
39. King, R. D., Whelan, K. E., Jones, F. M., Reiser, P. G. K., Bryant, C. H., Muggleton, S. H., Kell,
D. B., & Olive, S. G. (2004). Functional genomic hypothesis generation and experimentation by a
robot scientist. Nature, 427(6971), 247–252.
40. Knowles, J. (2009). Closed-loop evolutionary multiobjective optimization. IEEE Computational
Intelligence Magazine, 4(3), 77–91.
41. Lipson, H., & Pollack, J. (2000). Automatic design and manufacture of robotic lifeforms. Nature,
406(6799), 974–978.
42. Long, J. H., Koob, T. J., Irving, K., Combie, K., Engel, V., Livingston, N., Lammert, A., & Schumacher, J. (2006). Biomimetic evolutionary analysis: Testing the adaptive value of vertebrate tail
stiffness in autonomous swimming robots. Journal of Experimental Biology, 209, 4732–4746.
43. Martin, J. (1991). Rapid Application Development. New York, NY, USA: Macmillan.
44. Mosetti, G., Poloni, C., & Diviacco, B. (1994). Optimization of wind turbine positioning in large
windfarms by means of a genetic algorithm. Journal of Wind Engineering and Industrial Aerodynamics, 51(1), 105–116.
45. Nolfi, S. (1992). Evolving non-trivial behaviours on real-robots: A garbage collecting robot.
Robotics and Autonomous Systems, 22, 187–198.
46. O’Hagan, S., Dunn, W. B., Brown, M., Knowles, J. D., & Kell, D. B. (2005). Closed-loop, multiobjective optimization of analytical instrumentation: Gas chromatography/time-of-flight mass
spectrometry of the metabolomes of human serum and of yeast fermentations. Analytical Chemistry, 77(1), 290–303.
47. Olhofer, M., Jin, Y., & Sendhoff, B. (2001). Adaptive encoding for aerodynamic shape optimization using evolution strategies. In Proceedings of the IEEE Congress on Evolutionary Computation,
(pp. 576–583). Piscataway, NJ, USA: IEEE Press.
48. Olhofer, M., Yankulova, D., & Sendhoff, B. (2011). Autonomous experimental design optimization of a flapping wing. Genetic Programming and Evolvable Machines, 12(1), 23–47.
49. Ong, Y. S., Keane, A. J., & Nair, P. B. (2002). Surrogate-assisted coevolutionary search. In Proceedings of the 9th International Conference on Neural Information Processing, vol. 3, (pp. 1140–1145).
Piscataway, NJ, USA: IEEE Press.
50. Parezanović, V., Laurentie, J.-C., Fourment, C., Delville, J., Bonnet, J.-P., Spohn, T., A. Duriez,
Cordier, L., Noack, M., B. R. andd Abel, Segond, M., Shaqarin, T., & Brunton, S. L. (2015). Mixing layer manipulation experiment—From open-loop forcing to closed-loop machine learning
control. Flow, Turbulence and Combustion, 94(1), 155–173.
51. Pask, G. (1958). Physical analogues to the growth of a concept. In Mechanisation of Thought Processes, no. 10 in National Physical Laboratory Symposium. London, UK: Her Majesty’s Stationery
Office.

21

R. J. Preen and L. Bull: On Design Mining: Coevolution and Surrogate Models

52. Paulsen, U. S., Vita, L., Madsen, H. A., Hattel, J., Ritchie, E., Leban, K. M., Berthelsen, P. A., &
Carstensen, S. (2012). 1st DeepWind 5 MW baseline design. Energy Procedia, 24, 27–35.
53. Potter, M. A., & De Jong, K. A. (1994). A cooperative coevolutionary approach to function optimization. In Y. Davidor, H.-P. Schwefel, & R. Männer (Eds.) Proceedings of the 3rd Conference on
Parallel Problem Solving from Nature, (pp. 249–257). Berlin, Germany: Springer.
54. Preen, R. J., & Bull, L. (2014). Towards the evolution of vertical-axis wind turbines using supershapes. Evolutionary Intelligence, 7(3), 155–187.
55. Preen, R. J., & Bull, L. (2015). Toward the coevolution of novel vertical-axis wind turbines. IEEE
Transactions on Evolutionary Computation, 19(2), 284–294.
56. Preen, R. J., & Bull, L. (2016). Design mining interacting wind turbines. Evolutionary Computation,
24(1), 89–111.
57. Rechenberg, I. (1971). Evolutionsstrategie—Optimierung technischer systeme nach prinzipien der biologischen evolution. Ph.D. thesis, Department of Process Engineering, Technical University of
Berlin, Berlin, Germany.
58. Rieffel, J., & Sayles, D. (2010). EvoFAB: A fully embodied evolutionary fabricator. In G. Tempesti,
A. M. Tyrrell, & J. F. Miller (Eds.) Proceedings of the 9th International Conference on Evolvable Systems,
(pp. 372–380). Berlin, Germany: Springer.
59. Rosenblatt, F. (1962). Principles of Neurodynamics: Perceptrons and the Theory of Brain Mechanisms.
Washington DC, USA: Spartan Books.
60. Savonius, S. J. (1930). Wind rotor. US Patent 1 766 765, June 24.
61. Schmidt, M. D., & Lipson, H. (2008). Coevolution of fitness predictors. IEEE Transactions on
Evolutionary Computation, 12(6), 736–749.
62. Schwefel, H.-P. (1975). Evolutionsstrategie und numerische Optimierung. Ph.D. thesis, Department
of Process Engineering, Technical University of Berlin, Berlin, Germany.
63. Sherman, L., Ye, J. Y., Albert, O., & Norris, T. B. (2002). Adaptive correction of depth-induced
aberrations in multiphoton scanning microscopy using a deformable mirror. Journal of Microscopy, 206(1), 65–71.
64. Singh, J., Ator, M. A., Jaeger, E. P., Allen, M. P., Whipple, D. A., Soloweij, J. E., Chowdhary,
S., & Treasurywala, A. M. (1996). Application of genetic algorithms to combinatorial synthesis:
A computational approach to lead identification and lead optimization. Journal of the American
Chemical Society, 118(7), 1669–1676.
65. Theis, M., Gazzola, G., Forlin, M., Poli, I., Hanczyc, M., & Bedau, M. (2006). Optimal formulation
of complex chemical systems with a genetic algorithm. In Proceedings of the European Conference
on Complex Systems, (p. 50). Saïd Business School, University of Oxford, Oxford, UK.
66. Thompson, A. (1998). Hardware Evolution: Automatic design of electronic circuits in reconfigurable
hardware by artificial evolution. Berlin, Germany: Springer.
67. Xie, S., Archer, C. L., Ghaisas, N., & Meneveau, C. (in press). Benefits of collocating vertical-axis
and horizontal-axis wind turbines in large wind farms. Wind Energy. doi:10.1002/we.1990.
68. Xudong, W., Shen, W. Z., Zhu, W. J., Sørensen, J. N., & Jin, C. (2009). Shape optimization of wind
turbine blades. Wind Energy, 12(8), 781–803.

22

