Searching the landscape of flux vacua with genetic algorithms

In this paper, we employ genetic algorithms to explore the landscape of type IIB flux vacua. We show that genetic algorithms can efficiently scan the landscape for viable solutions satisfying various criteria. More specifically, we consider a symmetric T6 as well as the conifold region of a Calabi-Yau hypersurface. We argue that in both cases genetic algorithms are powerful tools for finding flux vacua with interesting phenomenological properties. We also compare genetic algorithms to algorithms based on different breeding mechanisms as well as random walk approaches.

Over the years, several approaches including systematic scans of explicit constructions and statistical analyses have been considered for exploring the landscape [7][8][9][10][11][12][13][14][15][16][17][18][19][20][21].The heart of the problem is that the enormous number of vacua in the landscape makes a straightforward scan computationally infeasible.The discrete landscape can be viewed as the complement of a continuum of seemingly consistent low-energy effective field theories (EFTs) that cannot descend from a string compactification, deemed the swampland [22,23], see [24] for a review.While the latter has received much attention in recent years, progress in data science might allow for systematic studies of the landscape itself, as demonstrated with a variety of techniques such as topological data analysis [25] and machine learning [26][27][28][29][30][31][32][33][34][35].
In this paper, we study the landscape of string vacua using Genetic Algorithms (GAs) [36][37][38][39][40][41].GAs search for optimal solutions to problems with huge input spaces via a natural selection process.The population of potential solutions evolves according to the fitness of individual members.Each individual is specified by its genotype, a string of data that defines the member's location in the input space.An individual's phenotype characterizes its properties as a solution, generally summarized by some fitness function.Via dynamics motivated by natural selection, genetic information related to the fittest members propagates to subsequent generations.Overall, the population adapts to the extrinsic factors implemented by the fitness.
In the past few decades, genetic algorithms have proven useful in diverse areas of physics including particle phenomenology [42][43][44], astrophysics [45][46][47] and cosmology [48,49].Applications of GAs to the landscape have so far been rather limited [28,[50][51][52][53][54][55].This is surprising given that they are very successful in scanning large data sets for viable solutions.Moreover, for deterministic algorithms, difficulties due to the large size of the landscape are exacerbated by computational complexity, as can be seen in several toy models [56][57][58][59].We might hope to avoid some of these issues using stochastic search methods based on natural selection processes, such as GAs.On the deep learning side, a closely related technique is Reinforcement Learning (RL).GAs and RL are both used to train machine agents to solve complex tasks in uncertain environments [60,61].
Ultimately, we are interested in selecting vacua based on their phenomenological properties such as the cosmological constant or certain desirable low energy spectra and couplings.As a first step, we focus in this paper on three such quantities: the string coupling, the superpotential value in the stabilized vacua, and the moduli masses.Nonetheless, it is straightforward to extend our GA analysis to other contexts.Methods along the lines outlined in this paper can be used e.g. to test the WGC [62] (and its various strong forms [63][64][65][66][67][68]). As a proof of concept, the problems addressed in this paper are not too computationally intensive, so all the algorithms we used can be implemented in Mathematica.However, it is worth mentioning that there are many publicly available packages for GAs written for different platforms, see e.g.[69][70][71][72] 1 .
In this paper, we explore the type IIB flux landscape, for which our genetic algorithms are (mostly) based on the following identifications, see also Tab. 1.1.The members of a population are distinct string vacua, each determined by a choice of (integer-quantized) fluxes.In other words, the chromosomes are flux vectors of maximal length 4(h (2,1) + 1) characterizing the genotype of a vacuum.Solving the F-term constraints for these fluxes determines the VEVs of the various moduli and gives the phenotype of a vacuum.The corresponding fitness is a function of physical observables including masses and couplings.Parent vacua are selected according to their fitness, and breed pairwise to construct child vacua.Parents breed via a crossover procedure where parts of one chromosome are replaced Genetic Algorithms Landscape individuals flux vacua chromosome flux vector alleles fluxes phenotype masses, couplings, etc. fitness function of masses, couplings, etc. boundary conditions SUSY condition, gauge fixing, tadpole Table 1.1: Dictionary relating terms used in the context of GAs and the flux landscape by the corresponding parts of a mate's chromosome.Additionally, mutation modifies some fluxes at random.After solving the F-flatness conditions and checking gauge inequivalence and the size of tadpoles, we can define a new population by choosing an appropriate number of child vacua as our subsequent generation.
Repeating the above steps for many generations results in a population gathering around a point of maximal fitness, i.e., vacua satisfying physical conditions specified by the fitness.Moreover, we find that GAs are significantly more efficient at finding physical solutions than randomly choosing fluxes.In other words, GAs are inherently superior to brute force approaches.This is a hint that the algorithm exploits some underlying structure of the flux landscape that is unknown at the outset of the search.This learning of structure can be confirmed by studying the "shapes" of individual generations using persistent homology, a technique previously applied to the landscape in [25].Exploitation of this structure leads to improved efficiency of a GA compared to simulated annealing, see Sect.4.6.
GAs, or stochastic search algorithms in general, are not effective for "needle-in-ahaystack" type problems.These problems do not allow for a distinction between incorrect solutions.In other words, all incorrect solutions are equally bad, so the performance of a GA is reduced to that of a random scan.Turning this around, it is important that a GA is searching a fitness landscape that is pseudo-continuous.Stated differently, there should exist a neighborhood around the optimal solution in which the fitness is well-behaved.This can be quantified by considering the fitness-distance correlation [73,74] with distance measured in the input space.
In general, stochastic search algorithms are efficient when the fitness landscape exhibits a funnel-like topography (see [75], and recently in the context of the landscape [76]), so that the optimal solution can be approached via small steps.This encodes itself in a large and negative fitness-distance correlation near the optimal solution, see Sect.3.3.Strictly speaking, the viability of a given search algorithm is determined empirically.If a solution or near-solution is found, the algorithm may be considered successful.If a solution is not found, either it does not exist, or it is not readily accessible to the algorithm at hand.In the latter case, computing the fitness-distance correlation can demonstrate the lack of a favorable funnel topography.This can sometimes be ameliorated by an alternative choice of problem encoding [77], but in general finding an efficient encoding requires solving the problem itself (in which case no search algorithm is necessary) or finding successful deterministic heuristics, which we aim to avoid due to its problem-specific nature.
In the presence of a fitness landscape the flow of the population shows a strong pull on certain observables so that the population quickly gathers around suitable solutions.This behavior typically depends on the precise definition of the fitness itself, especially when considering several search parameters.In contrast, "needle-in-a-haystack" situations can only randomly sample the space of solutions since unwanted solutions cannot be distinguished.As we will see, all models considered in this paper do not belong to the class of a "needlein-a-haystack".It has previously been argued that due to the structure and correlations within the landscape GAs are expected to work well more generally [55].It seems therefore promising to us that GAs constitute valuable tools to systematically study the landscape.
This paper is organized as follows.First, we review the construction of flux vacua in type IIB compactifications in Section 2. We then collect the basic principles of genetic algorithms in Section 3. Subsequently, we define an algorithm suitable for studying type IIB flux compactifications.Afterwards, we apply our algorithm to two examples: a hypersurface in the weighted projective space WP 4  1,1,1,1,4 (Section 4) and the symmetric T 6 (Section 5).We conclude in Section 6.

Flux compactifications
In this section, we briefly review type IIB flux compactifications on Calabi-Yau orientifolds in the presence of background fluxes, see [78,79] for reviews.In these setups, 3-form fluxes stabilize the axio-dilaton and complex structure moduli.Due to flux quantization and tadpole cancellation, the resulting space of vacuum solutions is a discretuum distributed over the moduli space [1,80].
We follow the conventions of [81].Consider a Calabi-Yau threefold M with h (2,1) complex structure moduli.We take a symplectic basis {A a , B b } for the b 3 = 2h (2,1) + 2 three-cycles, with a, b = 1, . . ., h (2,1) + 1.The dual cohomology elements α a , β b satisfy From the unique holomorphic three-form Ω, we define the periods in terms of the symplectic matrix whose entries are (h (2,1) + 1) × (h (2,1) + 1) matrices.The RR and NSNS 3-form fluxes are quantized and can be expanded in the α, β basis as Here, f and h are two integer-valued b 3 -vectors.From now on we set (2π) 2 α = 1 and define for later purposes.The fluxes induce a superpotential for the complex structure moduli and axio-dilaton φ ≡ C 0 + ie −ϕ , given by [82] In type IIB supergravity the 3-form fluxes only appear in the combination The tree-level N = 1 F-term scalar potential induced by 3-form fluxes is of no-scale type, given by Here, K a b is the inverse Kähler metric on complex structure moduli space and D a W = (∂ za + (∂ za K))W the associated Kähler derivative (similarly for φ).The corresponding mass matrix for the real scalar fields is given by evaluated at a minimum of V with I, J ∈ {Re(z a ), Im(z a ), Re(φ), Im(φ)}.We are interested in vacua with vanishing F-terms The Kähler potential for the axio-dilaton and complex structure moduli is given by The F-flatness conditions (2.9) and (2.10) imply that the (3,0) and (1,2) parts of the fluxes vanish, so that G 3 is imaginary self-dual, 6 G 3 = iG 3 .The D3-brane charge induced by the fluxes can be written as One can show that N flux > 0 for imaginary self-dual fluxes.Hence, negative D3-brane charges have to appear to ensure tadpole cancellation.These negative charges can be induced by orientifolding.In this paper, we will not be explicit about orientifolding.We will rather take L max as an adjustable parameter and, along the lines of [7,8,81], consider solutions with with remaining charge cancelled by mobile D3-branes.As shown in [25], L max sets the scale at which interesting structure in the moduli space distribution appears.
It is crucial that we fix gauge symmetries relating equivalent vacua when running our GA.Otherwise, we might end up with redundancies in our population of vacua.In our case, the symmetry group is given by G = SL(2, Z) φ × Γ where SL(2, Z) φ is the S-duality group from type IIB and Γ is the modular group acting on the complex structure moduli space.We choose a gauge-fixing prescription in which each vacuum is mapped to the corresponding fundamental domain where we have to keep track of all fluxes.Throughout, we will consider the evolution of stabilized VEVs for the axio-dilaton and complex structure moduli, and functions thereof.

Genetic algorithms
In this section, we collect the necessary ingredients to study genetic algorithms in the context of string compactifications, see also [39,42,55] for more pedagogical introductions.We begin with a brief summary of GAs.Afterwards, we turn to applications to flux vacua and describe the algorithm applied in the remainder of this paper.We also highlight novel complications encountered when using GAs to search the landscape, namely that consistency conditions are not necessarily preserved by the breeding process.Finally, we elaborate further on the suitability and performance of GAs in the context of flux compactifications.

Generalities
A GA in the sense of [36,38] can be described as follows.One begins with a population of p randomly chosen individuals, each specified by a string of data referred to as the chromosome.The chromosome describes the defining input parameters of each individual, thereby encoding the individual's genotype.The chromosome consists of alleles whose number and values depend on the model in question.Typically, for alleles taking values in a smaller range, a smaller population size can be chosen, see the discussion in Sect.3.2.The physical characteristics of a member, also called its phenotype, are obtained by computing functions of the genotype.In a physics context, this typically corresponds to a set of physical observables like masses, couplings, or representations.Now, the algorithm proceeds by repeating the following three steps.
First, the process of selection is introduced by declaring certain individuals to be more competitive for breeding than others.This is typically achieved by collecting pairs where the single members in a pair are referred to as parents.As in nature, specific individuals have physical properties distinguishing them from the typical individual and making them more likely to procreate.This preeminence can be taken into account by assigning to each member a fitness based on the phenotype.
Secondly, individuals breed to construct a new population, made up of members called children.This is achieved by splicing the two chromosomes of a single pair together.We typically employ a two-point crossover where the parent chromosomes are both cut at the same two randomly selected positions, swapping the middle sections.Afterwards, we pick one of the two new chromosomes at random as the genotype of a new individual in the descendant population.
Thirdly, and this is the major feature responsible for the efficiency of genetic algorithms, the children's chromosomes are altered by mutation.More specifically, for randomly selected children, a fraction of random alleles, typically about 1%, are modified.This is necessary to prevent the algorithm from stagnation.For example, the population can cluster around a local maximum of the fitness, even though a better global maximum is available.The algorithm might never gain knowledge of the latter without mutation.In this sense, mutation should not be viewed as a tool to increase convergence, but more crucially as an integral part of the algorithm itself.Along these lines, we will compare different mutation rates within a simple example in Sect.4.2.Taking the population size p to remain constant2 , the new population is obtained by taking all children, replacing the least fit individual found after mutation with the fittest individual from the previous population.This last step, called elitist selection, forces the maximum fitness to increase monotonically with each generation.
The above three steps form a generation.We repeat them several times, until a limiting rate of convergence is reached.In general, only a certain fraction of the population can reach the optimal solution, see e.g. the discussion in Sect.1.2 of [55].

Genetic algorithms for Flux Vacua
In this section we translate the general notion of GAs into the language of type IIB flux compactifications.Throughout this section we employ a notation where O A denotes the vacuum expectation value of some quantity O computed by solving the F-flatness conditions for the fluxes N A .
A population of size p is a set of flux vacua V A , A = 1, . . ., p, obtained by solving the F-term constraints D a W = 0 = D φ W, a = 1, . . ., h (2,1) , and fixing the gauge redundancy.Apart from intrinsic geometric quantities specified by the choice of a compactification space, input parameters are only flux numbers More specifically, V A encodes all elementary information about the vacuum which corresponds in our case to the VEVs of all moduli fields z a A and the axio-dilaton φ A .Hence, each vacuum V A has physical attributes including • the value of W 0 (N A ) = W A , the string coupling and the moduli masses.
These characteristics specify the vacuum's location in moduli space, the tadpole as well as various mass scales etc.Initially, we choose a certain number of fluxes at random, whereas fluxes of any descendant population are determined through the pairing process (see below).
It is crucial that we restrict the tadpole such that N flux ≤ L max , albeit we do not fix it to a certain value.Otherwise, the population might be driven towards solutions with arbitrarily large tadpole.Restricting the size of our tadpole may present limits to the sorts of vacua accessible to our algorithm.For example, it has been noted that in some examples F-term constraints force vacua at weak coupling, large complex structure, and large volume to have large N flux [98].
The fitness can be used to find vacua with certain values for the VEVs or functions thereof, such as W 0 , which we collectively denote O (i) in this section.For a fixed compactification space, the fitness of some vacuum V A will be a function of the fluxes, F A = F (N A ). Say we are interested in vacua with values O (i), * for some observables O (i) .(Throughout this paper, we denote with the superscript * the optimal solution within our GA.)We write the value of the observable A .We define the associated fitness F A of V A as Here, we introduce weights w i and a normalisation factor N so that A F A = 1.We typically choose f i to be a Gaussian of width δO (i) , but other choices also work well.The offset b is necessary to prevent F A from localizing around a local maximum of one of the f i .In general, we have to keep in mind that several of the O (i) could be correlated.Thus, it also has to be checked that the required values O (i), * are compatible with each other.Finally, the dynamics of the algorithm is generically highly sensitive to the choice of weights w i .
Using the fitness, we generate a set of pairs (V A , V B ) of vacua.We allow the two vacua in a pair to be identical.We typically take some number P > p of random pairs, large enough to guarantee enough gauge-inequivalent solutions after breeding satisfying tadpole constraints.This is a minor setback compared to the general algorithm described in Sect.3.1.There is typically no way to tell whether a pair leads to a viable solution a priori.Still, random search algorithms face similar problems in this context, while they do not benefit from the crucial interplay of selection, crossover and mutation.Thus, we expect our algorithm to be more efficient than a Monte-Carlo procedure, notwithstanding the aforementioned difficulties.
A child vacuum v C is constructed from a pair (V A , V B ) in the following way.First, we construct a new string of fluxes along the lines of Sect.3.1.That is, the new genotype where k 1 , k 2 ∈ {1, . . ., 2b 3 }, k 1 ≤ k 2 , are two randomly chosen integers.Mutations are applied by replacing a certain number of fluxes by some new random value.We introduce the mutation rate q mut and perform a mutation on n mut flux numbers of a single individual whenever q < q mut for a randomly chosen number q ∈ [0, 1].
Next, all newly obtained strings of fluxes are plugged into the F-term constraints to judge whether they meet all relevant criteria.More specifically, we have to check the existence of solutions, the size of the flux-induced D3-charge N flux as well as gauge inequivalence.Finally, the new genotype potentially results in a well-defined vacuum A new population is defined as a random choice of p children v C .As mentioned above, it is hence mandatory that the previous step leads to more than p inequivalent vacua by initially generating P > p pairs.Having defined the population of the next generation, we can continue by computing the associated fitness of each member and going through the same steps again.
We also have to think about the initial population size.We typically restrict to tadpoles smaller than some flux scale L max and compute the relevant quantities.Since genetic algorithms are designed to find the global maximum of the fitness function, it is necessary to have access to all the parameter space.This means that every allele should include every possible flux choice.We restrict to fluxes in the interval [−L max , L max ] for simplicity. 3If we take the population size to satisfy p ≥ (2L max + 1) 4(h (2,1) + 1) , (3.4) then this is most certainly true.This is obviously a very naive estimate, but we expect it to be sufficient for the level of our discussion.

Schemata and fitness distance correlation
We call the space parametrized by the O i the search space, in contrast to the parameter space of fluxes N. A GA converges in search space, but not necessarily in parameter space.By this we mean that the final population is dominated by members for which O (i) A is close to the optimal solution.More specifically, for two solutions we find while the distance in parameter space can be arbitrarily large.(This is because the mapping from fluxes to fitness is not one-to-one.)However, a notion of convergence in parameter space also turns out to be useful.As explained in [55], convergence in parameter space occurs for some variables which form so-called schemata, as introduced by Holland [36].
Although Holland's idea has been criticized over the years 4 , it gives a nice understanding of the generic evolution within a GA, albeit being incomplete.Schemata are characterized by a prototypical behavior of GAs which is that certain parameters quickly converge towards one unifying value.To be more precise, schemata represent the crucial features being favorable characteristics of the optimal solution.This can be interpreted as the fact that a small collection of alleles dominate the fitness.As soon as their values are adjusted correspondingly for the majority of the population, the breeding procedure does not affect them anymore.The formal study of schemata results in the following two conclusions.First, the entire population never quite reaches the optimal solution.This is related to the observation that schemata never touch every single individual, see Sect.1.2 in [55].
Secondly, mutation plays a crucial role in identifying the best schema.As we will see further below, it forces the algorithm to pick out one schema associated to the "global" maximum of F .It is important to note that in our case we may not reach the true global maximum, since we typically restrict to certain corners of flux space.One string-theoretic example where we might expect the domination of various schema is the toy problem of generating fluxes satisfying the tadpole cancellation condition (2.13).For large flux integers (relative to L max ), satisfying (2.13) requires cancellations between various flux contributions.The various ways flux contributions can cancel represent different (approximate) schema for a search for tadpole-satisfying configurations.
To study the efficiency of GAs for our problems, we consider the 1 -distance from an individual to the fittest individual of a generation in flux space, Here N ref is the flux associated to a generation's fittest individual.Recall that this member is carried over to the next generation due to elitist selection.Thus, N ref is only replaced if there appears a member of even greater fitness.In the literature on GAs [73,74] 5 , the utility of a GA for a given problem can be quantified by the fitness distance correlation (FDC)6 Here, F is the average fitness, D is the average distance, and σ F , σ D are the corresponding standard deviations.One infers that models with • 0.15 ≤ F DC ≤ 1 are GA-hard.This class of models is not tackled well by GAs since the fitness correlates with the distance, i.e., the fitness grows with distance.
• −0.15 ≤ F DC ≤ 0.15 are difficult, that is, there is (almost) no correlation between fitness and distance.
• −1 ≤ F DC ≤ −0.15 are GA-easy.The anti-correlation of fitness and distance implies that the fitness is maximized as the global optimum is approached.Hence, these tasks are suitable for running a GA.
When using the algorithm described in Sect.3.2, it can be useful to fix certain parameters, while keeping others dynamical.For instance, the width or support of our fitness function can be chosen to decrease to force the population to adapt more and more to a certain value.This is especially helpful when trying to find vacuum solutions sharing certain properties at a given level of accuracy.
To summarize, we can expect the initial population to quickly approach the optimal solution due to the emergence of schemata.Subsequently, there is period of minor adjustments of the remaining flux parameters.

Calabi-Yau hypersurface
In this section, we first review the definition of the hypersurface in question.Next, we explain the general characteristics of our GA.We compare the results to GAs with different breeding mechanisms and to a Metropolis algorithm.We perform only a single search here before we come to more interesting applications in the upcoming section.

Expansion around the conifold locus
In this section we investigate a Calabi-Yau threefold arising as a hypersurface in the weighted projective space WP 4  1,1,1,1,4 , defined by Its Hodge numbers are given by h (1,1) = 1 and h (2,1) = 149.We focus on the orientifold taking x 0 → −x 0 , ψ → −ψ along with worldsheet parity reversal, which arises from Ftheory compactified on a Calabi-Yau fourfold defined as a hypersurface in WP 5 1,1,1,1,8,12 .This amounts to tadpole with L max = 972 [99].As described in [81,99,100], (4.1) has a discrete symmetry group Γ = Z 2 8 × Z 2 , and any complex structure deformation except the ψ-term is charged under Γ.By working in a regime where only fluxes consistent with Γ are turned on, we can neglect these charged moduli and consistently solve for the periods for the axio-dilaton φ and uncharged modulus ψ.
We are particularly interested in flux vacua near the conifold point ψ = 1, for which the periods can be written in terms of x = 1 − ψ, |x| 1, as [100] Here, the constants b 0 , d 0 ∈ R, a 0 , a 1 , d 1 ∈ iR and b 1 , c 0 , c 1 ∈ C can be found in Sect.5.1 of [100].To first order in x ≡ 1 − ψ, the F-flatness conditions result in ) Using Monte Carlo simulations, the authors of [100] explicitly showed that vacua cluster near the conifold point, confirming the expectation from the continuous flux approximation of [7].
In the remainder of this section, we perform all algorithms with Since we work in the conifold regime, the VEV of the complex structure modulus x is typically driven towards tiny values.This is because the flux vacua cluster around the conifold point.

Analyzing different mutation rates
Let us now find flux vacua with a certain value of the superpotential W 0 .This can be relevant when, e.g., looking for vacua that are applicable for any of the three branches of Kähler moduli stabilisation, namely KKLT [101], LVS [102] or Kähler uplifting [103], which generically require ) respectively.For simplicity, we only search for a specific absolute value of |W 0 |, although fixing real and imaginary separately is also within the capabilities of our GA.In the following, we use W 0 to denote the absolute value of the superpotential.We run the algorithm with the parameters Here, we choose not to apply any crossover, but restrict to the effects of selection and mutation.As we will see in the remainder of this paper, this is already sufficient to find (presumably local) fitness maxima.We discuss the impact of crossover on these results in Sect.4.4.To guarantee the optimal outcome for a GA, it is necessary to adjust the number of mutations as well as the mutation rate.Here, we run our algorithm several times with n mut mutations per mutated child and mutation rate q mut .In order to find the optimal mutation scheme, we compare the convergence around a fixed neighborhood around W * 0 , cf.Fig. 1.First of all, we observe that applying two mutations per child (purple line) results in an insufficient convergence rate.This behavior is no surprise because, having only 8 independent fluxes to begin with, two mutations overshadow the underlying structure of the optimal solution.In contrast, one mutation results in a seemingly stable evolution over all generations with high convergence rate.Moreover, by comparing the yellow and green line in Fig. 1 we deduce that the search for W 0 considered in this section does not seem to strongly depend on q mut .Nonetheless, we emphasize that it is crucial to scan over different mutation rates in all examples discussed below.Otherwise, the GA's ability to find certain schemata associated to the optimal solution is undermined.
All in all, we conclude that mutation really is an essential ingredient for the success of our algorithm.For our purposes at most one flux mutation per individual seems to be a good guess.However, the mutation rate has to be adjusted accordingly to guarantee the optimal outcome.As we will see below, this typically depends on the specific task.

Genetic algorithm dynamics
After having investigated different mutation rates, we describe the generic features of a GA's evolution.We proceed by running the algorithm using W * 0 = 50000 , δW = 2000 , p = 1000 , N gen = 100 , q mut = 0.5 .(4.7) In practice, we are interested in solutions that approximately satisfy W 0 ≈ W * 0 up to small deviations.We therefore decrease δW after 50 generations by 50% every 20 generations.In doing so, we change the fitness landscape and induce an additional force on the flow of the population.As we will see below, this allows us to find about 93% of the flux vacua localized in the range [W * 0 − 50, W * 0 + 50].Fig. 2 shows the number of individuals in neighborhoods of different sizes r around the optimal solution.During the first 50 generations with δW = 2000, we observe a sharp incline of the blue and orange curve corresponding to r = 1000 and r = 750 respectively.Hence, the population quickly moves towards the optimal solution, but remains mostly outside a neighborhood with r = 500.After decreasing δW, we observe another sharp incline, but this time in the green (r = 500) and red (r = 250) curve.In the final population about 93% of individuals have the optimal value of W 0 to an accuracy of 0.1%.
We show the distribution of our population in the g s -W 0 -plane on the left of Fig. 3.At the beginning, the population (blue dots) is randomly scattered across random values of W 0 and g s .After 40 generations, the distribution of W 0 and g s exhibits a clear structure in the sense that the individuals around W * 0 form almost straight lines in g s -direction.As expected for GAs, a certain fraction of individuals is found far away from the optimal solution.However, the majority of vacua strongly clusters around W * 0 which is clearly visible from Fig. 3.After having decreased δW, the distribution of the final population leaves only one of the previous g s -lines present which is closest to W * 0 .We interpret this behavior as an indication of improved convergence related to the reduction of δW.The FDC (3.7) averaged over all generations results in FDC = −0.53 which is within the GA-easy regime.This is in good agreement with the above qualitative observations.Thus, we find reason to believe that our definition of an approximate notion of FDC (3.6) is well-suited for our purposes.
Next, let us consider the distribution of φ in the fundamental domain as depicted on the right hand side of Fig. 3. Interestingly, after 40 generations the flux vacua mostly align with straight lines pointing towards the origin.These lines seemingly form a symmetric pattern.On top of that, short vertical lines appear at the outer region of the fundamental domain.This pattern survives until the termination of the algorithm and, even more importantly, is enforced during the evolution.We interpret this result as the manifestation of the schemata associated to the optimal value of W 0 .That is, the chromosomes of individual fluxes share specific properties that result in the observed alignment of φ-VEVs.This interpretation is To understand these results further, we use persistent homology to analyze the topological structure of the distribution in flux space, applying the methods used in [25,104], see also [105][106][107][108][109][110] for more elaborate introductions.Persistent homology has previously been used to characterize distributions of string vacua, and identify loci in moduli space related to phenomenologically interesting properties.
Applied to the scenario under consideration, we compare the flux distributions of populations at different generations during the GA's evolution.We specifically consider the persistence diagrams associated to the data set of fluxes for a single generation.These diagrams encode the two scales at which certain higher-dimensional topological features in the set of fluxes first emerge and vanish.In Fig. 4, we compare the flux configurations of the initial (top) and the final (bottom) population. 7The plot on the top shows a lot of structure in terms of the presence of various k-cycles, albeit most die very quickly.Randomly choosing the initial fluxes results in regions of non-trivial topology.In contrast, the distribution of the final population on the bottom of Fig. 4 does not show much topologically interesting structure.Moreover, the majority of observed features are very short-lived in terms of the associated scales.This indicates that (most) fluxes form a cluster which does not exhibit any non-trivial topological properties at large scales.

The role of crossover
The takeaway message of the previous section is that a GA can be applied even without performing any crossover.The true power of GAs typically comes only to light when having a dynamical interaction of selection, crossover and mutation.In the remainder of this section, we would like to contrast different choices for running the GA.For instance, one can consider various crossover operators at the same time to increase the GA's performance.This is necessary since different tasks generally require the application of suitable crossover procedures.Here, we restrict to a 2-point crossover operator as explained in Sect.3.2.
Using the same initial population as previously, we find the evolution depicted as the orange line in Fig. 5.If we compare the blue (no crossover) and orange (2-point crossover) line, we observe that applying a non-trivial crossover operator leads to a more stable evolution, especially at early stages.Recall that we reduce the support of the fitness at generation 50.At this point of the GA's evolution without crossover the population seemingly feels a strong pull towards the optimal solution.In contrast, the convergence rate with 2-point crossover increases almost monotonically.Thus, although the final population is qualitatively the same, we find significant difference in the overall evolution.
The previously mentioned structures in Fig. 3 emerge with 2-point crossover as well which is a strong indication for a characteristic feature associated to the optimal solution, see the discussion in the upcoming section.We also analyzed the resulting distribution of constrained fluxes in the spirit of the previous section.Indeed, the persistence diagram for the final population mirrors the results of Fig. 4.

Comparing different breeding mechanisms
There is another way of implementing a genetic algorithm which might be useful when large input parameters appear.Recall that, in order to guarantee that the algorithm can access most of the landscape, we have to ensure that the whole range of alleles appears within each individual locus of a chromosome.This means that the necessary population size scales with the maximally allowed allele.Hence, it might be useful to interpret each flux as a single chromosome by encoding it in a binary form.As opposed to the breeding and crossover mechanism explained in Sect.3.2, we now perform crossovers for each individual flux.That is, we act on 8 strings of zeros and ones.It is expected that the necessary population size is drastically reduced in this way.In fact, one finds that for a chromosome of length [55] with P * being the probability with which every allele should appear at each locus at least once.This is generally much smaller than the minimum population size for alleles taking values in [−L max , L max ].
In this section, we compare the performance of both methods, applying 0-and 2-point crossover for the same population size p = 1000. 8First, the overall evolution is very alike to the distribution shown in Fig. 3.It is worth mentioning that the observed pattern in the distribution of φ-VEVs also emerges here independently of whether we perform 0-or 2-point crossover.Thus, we are convinced that this linear structure is not related to the applied crossover procedure, but rather a property of the vacua close to the optimal solution.
In Fig. 5, we see that there are only minor differences in the overall performance.Hence, this way of performing crossovers and mutations might be advantageous in higherdimensional models than considered here.The point is that solving the equations of motion in high-dimensional spaces is computationally very costly.Thus, working with smaller population sizes provides a welcome reduction in computational expense.
As before, we observe a strong clustering also for the case of binary crossover.This becomes apparent by performing a Principal Component Analysis (PCA) on the final population.In general, PCA is useful for determining sets of linearly uncorrelated variables.Applied to the flux distribution of our population we gain information about the effective dimensionality of the resulting (discrete) hypersurface.That is, some fluxes will take specific values as we argued previously in the context of schemata in Sect.3.3, while others remain arbitrarily distributed over some range of flux values [−L, L].PCA organizes the full flux space into orthogonal dimensions of decreasing variance.The intuition is that most data actually lives on a hyperplane of smaller dimension than the naive dimensionality of the data set.This can be quantified by examining the percentage of the data's variance that is retained when the data is projected onto a particular hyperplane.
One subtlety is that our gauge-fixing condition forces different flux components to take values in ranges of different scales.Naive application of PCA would then artificially inflate the importance of fluxes taking values in a large range.To remove this artifact, we first rescale the flux components in the initial population so that each component has zero mean and unit variance.The same scaling transformation is then applied to the final transformation.
For the final population obtained in Sect.4.3 and Sect.4.4, we find that the fluxes live on an effectively 1-dimensional hypersurface, with 92.84% (no crossover) and 89.57% (2-point crossover) of the variance in the first component.Similarly, binary encoding leads to significantly more clustering with 99.63% (no crossover) and 92.96% (2-point crossover) variance in the first component.Qualitatively, both crossover procedures give rise to a very similar evolution of the variance.

Comparison to a Metropolis algorithm
In this section, we compare the results of our genetic algorithm to those of random walk approaches.More specifically, we consider a Metropolis algorithm [111] or rather its related variant of simulated annealing [112].As before, we start with a randomly sampled generation of flux vacua.In contrast to the GA, we take a random step from each point in where q ∈ Z 8 , |q i | ≤ 1, is a random vector and r ∈ N some fixed step size.The vector q must be chosen such that M also leads to a solution of the F-term constraints with N flux (M) ≤ L max .Practically, this means that we have to perform many such steps and test the criteria for a viable physical flux choice.
In order to define a new population, we evaluate an energy functional E given by the difference in fitness If E ≤ 0, the new configuration M is energetically favorable.In this case, M is carried over to the new population.If E > 0, we define a probability with some "temperature" T and draw a random number q ∈ [0, 1].If q < P T (E), M is chosen as a member of the next generation.Again, we use the same initial flux choices and let the algorithm run for 1000 steps for each individual.We choose r = 1 and determine the initial temperature T for each vacuum solution individually.That is, we fix an initial acceptance rate of about 20% by considering 100 random steps q before starting the evolution.We decrease the temperature by a factor of 10 every 100 steps.In total, we find that 96% of individuals can be found within the range [W * 0 − 50, W * 0 + 50].If we compare the overall evolution of the distribution of g s and W 0 in Fig. 6 with the one for the GA in Fig. 3, it becomes clear that this method, with each individual walking independently of the others, does not exploit correlations between different vacua.Although the population gets close to the optimal solution, it shows less structure than the equivalent plots in Fig. 3. Similarly, we checked that the distribution of φ-VEVs does not exhibit the symmetric pattern of Fig. 3. Qualitatively, this can be understood as follows.After some generations within a GA, all vacua are in a sense related to each other due to the applied selection process.On the contrary, the random walk approach does not link solutions in a similar fashion.Thus, there is no reason for them to share characteristics, albeit the population gathers around the optimal value W * 0 .Since the final population is randomly distributed around the optimal solution, there should be less clustering in flux space.By this reasoning, we should expect the distribution of fluxes in the final distribution to have a much richer structure than for a GA.This can be seen by comparing the persistence diagrams.Recall that in Fig. 4 we observed that the final population resembles a cluster in flux space.In contrast, the persistence diagram of the final population associated to the Metropolis algorithm in Fig. 7 exhibits more longlived higher-dimensional features.That is, there are a greater number of long-lived 1-and 2-cycles.
As before, we performed PCA on the flux distribution.Here, the variance in the first component increases to only 54.6% in contrast to 89% for the previous algorithms.That is, the final population obtained via the Metropolis algorithm is less constrained in flux space.This is to be expected from dynamics of the algorithm and already confirmed via TDA.
Finally, we note that in our experiments, Metropolis was less efficient than GAs in two senses.First, the random steps taken by Metropolis were less efficient in finding physical vacua than our GA.As previously argued, crossover should be more efficient in finding physical vacua than taking random steps.Second, even in terms of physical steps, Metropolis took longer than our GAs.We found that it took Metropolis an average of 336 physical steps to match the performance of a GA after 80 generations.

Symmetric T 6
In this section we consider compactifications on a symmetric T 6 .One interesting feature of the symmetric T 6 is the existence of vacua with vanishing tree-level superpotential.These special vacua give rise to the opportunity to study their emergence within GAs.A major issue with finding such vacua is that they are quite scarce in comparison to generic vacua.Hence, we cannot take for granted that GAs can identify these exceptional cases within the landscape.

Generic and special vacua
We follow the conventions of [81].The symmetric torus can be viewed as a direct product of three T 2 setting the modular parameters τ ≡ τ 1 = τ 2 = τ 3 all equal.The moduli space has two complex dimensions, so we have upon gauge fixing 8 independent flux parameters.Let us first parametrize a general T 6 before we specialize to the symmetric case further below.We define coordinates x i , y i for i = 1, 2, 3 with periodicity x i ≡ x i + 1, y i ≡ y i + 1 such that the three holomorphic 1-forms can be written as dz i = dx i + τ ij dy j .We take the orientation and choose a symplectic basis for H 3 (T 6 , Z), namely The holomorphic 3-form can be written as We can expand the 3-form fluxes in terms of the symplectic basis (5.2) For a symmetric T 6 , we take This is equivalent to taking the T 6 to be factorizable as three two-tori with equal modular parameter.Similarly, the fluxes get reduced to The superpotential takes the simple form where P i are cubic polynomials in τ , i.e., (5.9) The Kähler potential for τ and φ reads and the D3-brane charge induced by fluxes corresponds to (5.11) The F-term constraints can be written in the form P 1 (τ ) − φP 2 (τ ) = 0 , (5.12) For non-zero VEV of the superpotential W 0 = 0, the axio-dilaton can be obtained using (5.12) so that Plugged into (5.13),one finds for τ = x + iy q 1 (x)y 2 = q 3 (x) , q 0 (x)y 4 = q 4 (x) . (5.16) The q i are polynomials in x which have for instance been computed in the appendix of [81].Surprisingly, multiplying both (5.15) and (5.16) to eliminate y, a cubic (rather than sextic) equation in x remains so that x can be found by solving (5.17) The coefficients α i are combinations of flux integers and can again be found in [81].Solutions with W 0 = 0 satisfy Thus, the solution for φ simply reads

.19)
As shown in [113], these solutions obey the special property that P 1 and P 2 must factorize over the integers, cf.Sect.4.3.3 in [81].Recently, it was shown in [25] using persistent homology that the solutions with W 0 = 0, when combined with flux quantization and tadpole cancellation, exhibit a different structure in the moduli space than generic vacua.We will see in Sect.5.3 that this also plays an important role when applying GAs to minimizing W 0 .

Searching for g s -Emergence of multiple schemata
In this section, we discuss the emergence of various correlations and schemata within the GA's evolution.For the sake of simplicity, let us first look for solutions with a certain value of g s .We begin with the following choice of parameters g * s = 0.3 , δg s = 0.05 , p = 10000 , N gen = 100 , L max = 500 , q mut = 1 .(5.20) We use a Gaussian to define the fitness, but e.g. a combination of Heaviside-functions works equally well.After half of the generations, we divide δg s by a factor of 2 every 10 generations.We employ no crossover within this search since it appears to be more efficient than employing a 2-point crossover operator.
Using the algorithm described in Sect.3.2, we find an evolution of the initial population as depicted in Figs. 8 and 9.Even though we only promoted g s to be a search parameter, y = Im(τ ) also accumulates around a value of approximately given by y ≈ 10.68, cf. the bottom plot of Fig. 8.As described in the introduction, this is a generic observation for GAs during which the evolution exerts a strong pull on some components of the moduli.In contrast, the values of Re(φ) and Re(τ ) remain equally scattered across the fundamental domain.Remarkably, we detect a correlation between g s and W 0 , see Fig. 9.For small values of W 0 , the value of g s is almost perfectly pinned to g * s , whereas the solutions tend to diverge away from g * s for large W 0 .This clearly raises the question whether we can improve on our findings by simultaneously minimizing W 0 .
To quantify convergence, we count the number of members within neighborhoods of different sizes.The progress of convergence from one generation to another is shown in Fig. 10.We observe that decreasing δg s after generation 50 clearly pushes the population closer to g * s .Moreover, around 90% of the population can be found within the interval [g * s − 0.1, g * s + 0.1] after only 10 generations.As discussed in Sect.3.3, the initial population evolves rapidly towards a region close to the optimal solution.The drop in blue and orange line observed in Fig. 10 is associated to the fact that the population gathers around two local fitness maxima.However, the algorithm picks out a global maximum over the course of a few generations.This can also be understood by looking at the distribution of certain fluxes forming the schemata.For simplicity, we only look at one dominating flux.Fig. 11 shows that there are two dominating peaks in the distribution of the flux number b at generation 10 (left), recall Eq. (5.6).Once the dominating schema wins, the population is pulled towards the peak on the right as depicted on the right hand side of Fig. 11.This can also be supported by considering the distribution of vacua in the W 0 -g s -plane as shown in Fig. 12.Notice that briefly the total number of members in the 1σ-region decreases, cf.Fig. 10.It is therefore important to keep in mind that the purpose of the algorithm is not to find as many suitable members as possible, but to maximize the fitness function.
Finally, let us comment on the distribution of fluxes.By performing PCA on the fluxes we observe that there are essentially only two free unconstrained directions in flux space, namely b 0 and d 0 .The evolution of the corresponding distribution is shown in Fig. 13.We observe a triangular shape with two dominating horizontal lines for fixed d 0 .All in all, we (5.21)

Minimizing W 0
Here, we try to find solutions with W 0 = 0.As discussed previously, these solutions have special properties in terms of the fluxes and VEVs.Notice that we do not implement  these analytic properties by hand, but simply look for solutions with P 1 (τ ) = P 2 (τ ) = 0 for τ and physical VEVs.So the algorithm does not know in advance about these special characteristic features associated to W 0 = 0 solutions.We would like to understand whether this has any impact on our genetic algorithm.We consider the parameters W * 0 = 0 , δW = 20 , p = 10000 , N gen = 180 , L max = 500 , q mut = 0.8 .(5.22) We decrease the support of the fitness function by 50% at generation 50, 70 and 90.
As shown in Fig. 14, the populations quickly converge towards small values of W 0 .However, the rate of convergence is significantly less than in e.g.Fig. 10.This becomes even more apparent when investigating the FDC of this task.Indeed, the evolution of the FDC in Fig. 15 shows that, while minimizing itself is not problematic at all, finding W 0 < 2.5 is GA-difficult.For one thing, the lack in convergence is related to the scarcity of W 0 = 0-solutions in comparison to those with W 0 = 0.As derived in [81], the number in terms of the total number of vacua N vac (L).On top of that, at small L discretization effects overshadow W 0 = 0 solutions (see for example Fig. 3 in [81]) which is why we have to go to comparatively large L. In any case, we observe that special solutions with W 0 = 0 are difficult for our algorithm to identify.Notwithstanding, we note that a small fraction of individuals do satisfy W 0 = 0.
In the light of the ongoing discussion about KKLT and related dS-vacua constructions [114,115], it is crucial to search the landscape for suitable flux vacua, see e.g.[99,116] for previous attempts.In order to safely ignore perturbative corrections, it is necessary to have W 0 1 [101,117].One can infer the existence of such vacua by employing statistical arguments [8].However, it is generally true that these vacua are less common than those with W 0 O(1) using similar arguments to the one above [10].
In our case, the smallest value found via the above algorithm is W 0 ∼ 10 −2 .Here it is important to keep in mind that the symmetric T 6 is only a simple toy example.General Calabi-Yau orientifolds with many moduli are expected to have a more involved structure within their flux landscape.Therefore, it would be interesting to see whether smaller values of W 0 are obtainable within such geometries utilizing GAs and extensions thereof.

Fixing mass scales
To conclude our survey of applications, we investigate a more difficult problem in the context of GAs.Namely, we elaborate on the idea of specifying several observables within our search.As we will see further below, it is necessary to try different selection methods in order to guarantee the success of our GA.We restrict our analysis to the case of no crossover which allows us to study the impact of different selection methods more easily.
The question of finding flux configurations with certain values of the mass scales is ubiquitous in the context of model building in string theory.For simplicity, we compute the diagonal entries of the mass matrix (2.8) for the canonically normalized fields evaluated at the SUSY minimum D φ W = D τ W = 0 which we denote M Re(φ) etc.We fix all four masses at the same value, i.e., we consider M * = 5000 , δM = 1000 , p = 10000 , N gen = 120 , q mut = 1 .
Figure 16 summarizes the results obtained by running the GA.The left plot shows that certain quantities are treated differently from the others during the algorithm's evolution.The right hand side of Fig. 16 depicts the number of individuals that satisfy the search criteria for all four mass scales at the same time.In comparison to the results obtained in the previous section, we conclude that it is significantly harder to get closer to the optimal solution whenever several parameters are taken into account.However, this might simply  be related to a bad choice of selection methods.As mentioned previously, many of such methods have been discussed in the literature, but we restricted mainly to the so-called roulette-wheel selection so far where the fitness itself is used as a measure of probability to procreate.This typically leads to premature convergence towards a local fitness maximum.This is not really problematic in the case of one GA-parameter.In the context of several, however, this is a serious issue.
Therefore, we tested different selection techniques such as • rank-weighted selection where each member is ranked by a number 1, . . ., p according to its fitness.This ranking is used to determine the probability for procreation which is chosen to be a linear mapping here.In comparison to roulette-wheel selection this means that individuals with high fitness do not dominate the crossover procedure too early during evolution.
• tournament selection where so-called tournaments between a subset of members are performed.That is, we pick k < p individuals from our population and take only the fittest for breeding.Since we need to make several of such tournaments, the diversity of fit individuals in the descendant population is enhanced.In other words, the population does not localize too early around a local fitness maximum.
The first does not lead to any better results, but is significantly slower in terms of convergence around the optimal solution.In contrast, tournament selection is really efficient in determining a global fitness maximum that satisfies the constraints on all search parameters.Starting with the same initial population as above, we use the parameters w Re(φ) = w Im(φ) = w Re(τ ) = w Im(τ ) = 1.0 , b = 0 (5.26) and consider only N gen = 60 generations.The results for tournament selection are summarized in Fig. 17.A crucial advantage of using tournament selection is that one can achieve significantly better results compared to Fig. 16 with only half the number of generations.Even though performing several tournaments is computationally more expensive, this selection method is therefore more efficient in the scenario under consideration.Finally, we would like to discuss tasks that are hard to tackle with GAs.In the context of this section, we observed some difficulty trying to arrange mass hierarchies.We believe that this is related to the more general circumstance that, whenever observables are strongly correlated, it is hard to fix them simultaneously.In the worst case, certain parameter values might be incompatible with each other, in the sense that no such pair exists in the fitness landscape.Alternatively, such solutions are very scarce.Identifying these limitations is typically beyond the GA's (or any stochastic search algorithm's) capabilities.

Conclusions
In this paper, we demonstrated that genetic algorithms are a helpful tool for searching for specific phenomenological features in the landscape of flux vacua.This is possible due to the underlying structure of the landscape, which is crucial for the success of GAs.We showed that GAs may be used not only to speed up the search for phenomenologically interesting models, but also to uncover unknown structures and correlations in the landscape.
In the present work, we discussed various properties of GAs that allow for a systematic and efficient study of the flux landscape.Specifically, we proposed a dictionary between concepts in these two respective fields that could be useful for future applications of GAs to string theory.
Applying our dictionary, we first considered the example of a Calabi-Yau hypersurface in a weighted projective space close to a conifold point.We observed the important effect the mutation rate has on the algorithm's performance, and the need to adjust it for various applications.We also studied the general dynamics of the GA, with an initial period of strong pull towards a local optimum followed by slower convergence to the global optimum.Along these lines, we used TDA and PCA to study the "shape" of the distribution of fluxes as a function of generation.These methods confirmed our ideas regarding clustering in the final population.We showed that distinct crossover operations typically lead to different evolutionary properties of the GA, albeit the final population turns out to be almost equivalent.In addition, we compared various breeding mechanisms which could be useful in scaled-up versions of the models investigated in this paper.In contrast to a Metropolis algorithm, the GA identifies links between various vacua due to the applied crossover procedure, enabling it to exploit the landscape's structure.On the other hand, a Metropolis algorithm features no such benefits.
We also applied the GA to a symmetric T 6 .While searches for values of the string coupling are GA-easy, we showed that finding solutions satisfying W 0 = 0 is difficult in the context of GAs.Although these solutions emerged within our searches, their scarcity seems to counteract the formation of associated schemata.This behavior can be quantified in terms of the fitness distance correlation.Finally and most importantly, we demonstrated that GAs are capable of finding vacua with several properties, namely specifying several masses.This success is encouraging as we look towards phenomenologically-viable constructions.
We emphasize that the applications of GAs are diverse and can easily be translated into other promising setups of, e.g., model building in string theory.In the future, we would like to turn to phenomenologically interesting questions such as testing the WGC or other statements about the landscape.We would also like to investigate different selection methods and other GA-relevant techniques allowing for an improved version of the algorithm applied in this paper.

Figure 1 :
Figure 1: Number of members in neighborhoods of radius r = 500 around W * 0 for zero, one or two mutations and different mutation rates.

Figure 2 :
Figure 2: Number of individuals within different ranges around W * 0 .

Figure 3 :
Figure 3: Distribution of g s , W 0 and φ for three generations.

Figure 4 :
Figure 4: Persistence diagram for the population in the initial (left) and final (right) generation in flux space.

Figure 5 :
Figure 5: The number of individuals within a range of 500 around W * 0 for the algorithms of Sects.4.3, 4.4 and 4.5.

Figure 6 :
Figure 6: The distribution for g s and W 0 obtained from a Metropolis algorithm.

Figure 7 :
Figure 7: The persistence diagram for the final population obtained with the Metropolis algorithm.There is significantly more large scale structure to be observed than in the analogous plot on the bottom of Fig. 4.

Figure 8 :
Figure 8: Evolution of the distribution of φ (top) and τ (bottom) for three generations.

Figure 9 :
Figure 9: Evolution of the distribution of g s and W 0 for three generations.

Figure 10 :
Figure 10: Number of members in neighborhoods of different radius around g * s .

Figure 11 :
Figure 11: The distribution of b for generation 10 (left) and 30 (right).

Figure 12 :
Figure 12: The distribution of vacua in the W 0 -g s -plane for generation 10 (left) and 30 (right).

Figure 13 :
Figure 13: Flux distribution for the two (almost) unconstrained fluxes b 0 , d 0 in the final population.

Figure 14 :
Figure 14: Top: the number of members in neighborhoods of different radius around W * 0 .Bottom: the evolution of the distribution of g s and W 0 for four generations.

Figure 15 :
Figure 15: Fitness distance correlation as a function of generation.

Figure 16 :
Figure 16: Top: the number of individuals having a single mass matrix entry within a neighborhood of r = 500.Bottom: the number of individuals having all four masses within neighborhoods of different radii.

Figure 17 :
Figure 17: Top: the number of individuals having a single mass matrix entry within a neighborhood of r = 500 using tournament selection.Bottom: the number of individuals having all four masses within different neighborhoods.