# Seeking Optimal GNSS Radio Occultation Constellations Using Evolutionary Algorithms
## 2 Principles and Methods
### Fitness Function  
As mentioned in Section 2.2, the fitness function plays a key role in evolutionary algorithms. The fitness function, which evaluates the degree of the optimization in the temporal and spatial distribution of ROEs, is established based on the concept of a spatio-temporal point pattern [38; 39]. This concept can be described as follows: For a given spatio-temporal region \(S\times T\), where \(S\) is a given region and \(T\) is a given time interval, the events of a spatio-temporal point process form a countable set of points, \(X=\{(s_{i},t_{i}):i=1,2,\ldots\}\), where \(s_{i}\in S\) is the location of a point and \(t_{i}\in T\) corresponds to the time information of the point. The spatio-temporal pattern of a random location \((s_{0},t_{0})\) in this region can be evaluated by the intensity of this location, which is as follows [39]:  
\[\lambda(s_{0},t_{0})=\lim_{|ds\times dt|\to 0}\frac{\mathrm{E}[Y(ds \times dt)]}{|ds\times dt|} \tag{5}\]  
where \(\lambda(s_{0},t_{0})\) is the intensity of the location \((s_{0},t_{0})\); \(ds\times dt\) denotes a small volume around this location, and \(Y(ds\times dt)\) denotes the number of points in the small volume. The intensity of a location can be regarded as the average number of points per unit volume around this location. Theoretically, if for every location \((s_{0},t_{0})_{i},(i=1,2,3,\ldots\ldots)\) in a given spatio-temporal region, \(\lambda(s_{0},t_{0})_{i}\) keeps the same, then the spatial-temporal sampling in this region is called homogeneous. While in practice, when evaluating the point distribution pattern in a given spatio-temporal region, the region is usually gridded both in time and space dimensions and if \(\lambda(s_{0},t_{0})\) keeps the same for all the grid points or \(Y(ds\times dt)\) keeps the same for all the grids, the spatio-temporal point pattern would be homogeneous.  
It can be seen that theoretically, a small spatio-temporal grid is preferred because the smaller the grid is, the more homogeneous the spatio-temporal point pattern would be achieved when the values of \(Y\) for all the grids are the same. But when applying this concept in the optimal design of LEO constellation for GNSS RO, it should be taken into consideration that the total number of 24 h ROEs is limited and the value of \(Y\) for all the grids should be larger than or equal to 1. Hence, we define the spatio-temporal grid as \(10^{\circ}\times 10^{\circ}\times 3\) h, and Equation (6) provides the fitness function used in the two evolutionary algorithms:  
\[fitness\ function=\frac{N_{Y_{ROE}\geq Y_{0}}}{N_{total}} \tag{6}\]  
where \(N_{total}\) denotes the total number of spatio-temporal grids and \(N_{total}=5,184\); \(Y_{ROE}\) denotes the number of the simulated ROEs in a certain grid; \(Y_{0}\) denotes the expected mean number of ROEs of each grid, which is calculated from the total number of simulated 24 h ROEs over the globe and the value of \(N_{total}\); and \(N_{Y_{ROE}\geq Y_{0}}\) denotes the number of grids with \(Y_{ROE}\geq Y_{0}\). For a certain number of LEO satellites, the constellation configuration which corresponds to the maximum value of the fitness function is the optimal one. The higher the value of the fitness function, the better the GNSS RO observation performance of the LEO constellation.