## 3 The GA+ANN Optimization Procedure
### Iterative Optimization (Curriculum Learning)  
The one-step optimization procedure may be difficult to apply in a multi-dimensional space \(\mathbb{L}^{n}\). Let us take the three-segment MODEL2 shell structure as an example (see Figure 1c). When each segment shell is composed of four symmetric layers of composite material (symmetric from the point of view of lamination angles), the overall number of different lamination angles reaches \(n=6\). The generation of patterns with a dense \(\lambda_{i}\) mesh may be, in this case, so time-consuming that even sophisticated approaches to the numerical experiment design are of no use.  
The novel idea of the optimization procedure to overcome the high-dimensionality problem described above is presented in Figure 3 and consists of the following steps:  
1. **FEM examples for ANN training (coarse grid)**: \(\mathbb{L}^{n}\) space is intentionally described by a limited number of patterns \(\mathcal{P}=\{(\mathbf{f},\mathbf{A})^{j}\}_{j=1}^{p}\). The role of the patterns is not to precisely describe the value of the objective function \(\mathsf{g}(\mathbf{\Lambda})\) but to approximately locate the extremes of this function.
2. **ANN training**: A deep network is trained to map \(\mathbf{\Lambda}\) into \(\mathbf{f}\); that is, the ANN should be capable of working as a function that returns vector \(\mathbf{f}^{i}\) for a given vector \(\mathbf{\Lambda}^{j}\): \(\mathbf{f}^{i}=\mathrm{ANN}(\mathbf{\Lambda}^{j})\).
3. **GA+ANN optimization**: GA optimization, with ANN applied to calculate the objective function, is performed; the result of this optimization is not significant with regard to a single \(\mathbf{\Lambda}^{*}\) vector; the number of repetitions of this procedure should produce a set of \(\mathbf{\Lambda}^{*,k}\) vectors around the global minimum. Since there is a usual system shift of the results of GA+ANN optimization relative to the results of FEM (herein called \"real\" results), it would be advisable to interrupt GA optimization before it reaches any sharp minimum of ANN approximation of the objective function (possibly shifting from the \"real\" minimum of the objective function being sought).
4. **FEM verification (fine grid around the optimum)**: For each \(\mathbf{\Lambda}^{*,k}\) obtained in the previous step (there is not a single vector \(\mathbf{\Lambda}^{*,k}\) but a group of vectors since the tentative optimization in the previous step is repeated \(K\) times), a vector of natural frequencies \(\mathbf{f}^{*,k}\) is calculated \(\mathbf{f}^{*,k}=\mathrm{FEM}(\mathbf{\Lambda}^{*,k})\), and a new set of patterns is created \(\mathcal{P}^{*}=\{(\mathbf{f}^{*},\mathbf{\Lambda}^{*})\}_{k=1}^{K}\).
5. **Stop criteria**: The usual stop criteria are verified; if the criteria are not fulfilled, the procedure returns to GA+ANN optimization following additional ANN training (retraining).
6. **ANN additional training**: The ANN already trained in the second step of the procedure is trained again (retrained) with the original set of patterns \(\mathcal{P}\) expanded with \(\mathcal{P}^{*}\); the ANN should then be more precise in the area of the expected global minimum.  
Figure 3: Scheme of an optimization procedure involving curriculum learning (CL).  
The proposed procedure differs from the previously tested one (see Figure 2) in two major aspects: the pre-generation of a relatively small pattern set and the possibility of retraining the applied ANN with new patterns surrounding the optimum solution. The loop shown in Figure 3--application of GA+ANN optimization, generation of a fine grid of patterns around the optimum, and additional ANN training--is herein called _Curriculum Learning_ (CL). The number following CL (e.g., CL2) shows the number of CL loops made (two in the case of CL2).