# EvoDevo: Bioinspired Generative Design via Evolutionary Graph-Based Development
## 3 Proposed Method
### Normalising Inputs  
To be able to create a GRN that is able to generalise to new environments, the inputs to the GRN (i.e., cell states) must be normalised. This also helps to ensure that one feature type does not have dominance over another. Normalising the data is difficult, as it is hard to define the minimum and maximum that will be achieved by each cell state feature. A Z-normalisation scheme is applied across the features of each cell's state to set the mean \(\mu\) to zero and the standard deviation \(\sigma\) to one for the organism at each development step. \[X^{\prime}\ =\ \frac{X-\mu}{\sigma} \tag{4}\]  
The moving average of \(\mu\) and \(\sigma\) is computed at each development step and is used to help normalise the cost features over the course of development. At each devo step \(n\in\{1,2,\ldots,N\}\), each objective \(f_{i}(x)\) where \(i\in\{1,2,\ldots,k\}\) is normalised by the objective at the initial devo step \(f_{i}^{0}(x)\). \[f_{i}^{n}(x)\ =\ \frac{f_{i}^{n}(x)}{f_{i}^{0}(x)} \tag{5}\]  
The normalised objectives at each devo step \(f_{i}^{n}(x)\) are then combined into a single objective \(F_{i}^{n}(x)\). \[F^{n}(x)\ =\ \sum_{i=1}^{k}f_{i}^{n}(x) \tag{6}\]  
Figure 4: Genetic search algorithm for evolving GRN. The reward metric is used to evaluate the organisms in the population. The reward is defined as  
\[R\ =\ -\sum_{n=1}^{N}\left(F^{n}(x)-F^{n-1}(x)\right) \tag{7}\]  
This essentially defines a comparison of the single objective at devo step \(n\) against the initial objective at devo step \(0\) for \(N\) devo steps. The minus sign inverts the sign of the metric for maximisation. Algorithms 1 and 2 represent the neuroevolution procedure described above. The algorithm consists of a two-level nested process: the inner process is the devo stage, where the GRN (either the GNN or CGP) applies the developmental rules, while the outer process (evo) involves the application of the mutation operator. ```
0:\(GRNType\in\{\text{CGP},\text{GNN}\}\)\(\triangleright\) choose the GRN model
1:EliteSize (number of top individuals to keep)
2:\(OffsetpringCount\) (new individuals per generation)
3:\(NumGenerations\)G
4:MaxDevSteps T
5:initialisePopulation\(\leftarrow\)CreateInitialPopulation(EliteSize,GRNType)
6:for\(g=1\)toG do
7:for organismin Populationdo
8:organism.Fitness\(\leftarrow\)DevelopOrganism(organism,T,GRNType)
9:endfor
10:EliteGroup\(\leftarrow\)SelectTop(Population,EliteSize)
11:OffspringGroup\(\leftarrow\)\(\emptyset\)
12:while size of OffspringGroup\(<\)OffspringCount do
13:Parent\(\leftarrow\)RandomChoice(EliteGroup)
14:Child\(\leftarrow\)MutateGenome(Parent,GRNType)
15:addChild to OffspringGroup
16:endwhile
17:Population\(\leftarrow\)EliteGroup\(\cup\)OffspringGroup
18:endfor
```  
**Algorithm 1**EvoDevoAlgorithm--outer loop  
```
0:Genome,MaxDevSteps T,GRNType
1:build initial SeedlingStructure
2:CumulativeFitness\(\leftarrow\)\(0\)
3:for\(t=1\)to\(1\)to\(2\)to\(3\)to\(4\)to\(5\)to\(6\)to\(7\)to\(8\)to\(9\)to\(10\)to\(11\)to\(12\)to\(13\)to\(14\)to\(15\)to\(16\)to\(17\)to\(18\)to\(19\)



system if further optimisation on a sub-optimal design is required. The geometries of this seedling are not constrained, but, in this paper, as in [37], a Warren truss bridge is selected as the seedling. The proposed framework combines a heterogeneous graph representation with GNN and CGP-based GRNs, with the parameters adjusted using neuroevolutionary search. By combining cellular-level sensing, decision making and actuation within the EvoDevo loop, the system can generate optimum truss architectures from a little seedling. The following section exhibits the use of these approaches to benchmark problems. Table 2 encapsulates the fundamental components of the EvoDevo algorithm and connects each with its biological equivalent. This provides additional insights into the translation of concepts between different domains for the remainder of this paper. ## 4 Experiments

Two GRN varieties (a GNN and CGP) are implemented for the three experimental treatments described here.