# Multiparameter Determination of Thin Liquid Urea-Water Films
## 3 Evaluation Strategy
### Optimization Procedures  
The optimization conducted in order to identify the best wavenumber \(\
u_{1}\) for film thickness determination is a straightforward process that can be performed by finding the minimum RMSE\({}_{\delta}\) value of the curve, as shown in Figure 4. As described previously, the temperature and concentration determination rely on the data point locations in a suitable \(\
u_{1}\)-\(\
u_{2}\)-\(\
u_{3}\) space. Only when combining the three appropriate wavenumbers \(\
u_{1}\)-\(\
u_{2}\)-\(\
u_{3}\) will the transformation of the respective data points to the \(\varphi\)-\(\theta\) space enable the calibration strategy shown in Section 3.2. Otherwise, no information about the unknown parameters can be  
Figure 8: (**a**) Predefined temperatures of each measurement over gradients \(\text{m}_{\text{T}}\) calculated between measurements, intersection point \(\text{P}_{\text{T}}\) in \(\varphi\)-\(\theta\) space (black dots) and corresponding first-order polynomial fit (red solid line). (**b**) Predefined concentration values of each measurement over gradients \(\text{m}_{\text{c}}\) are calculated between measurements, intersection point \(\text{P}_{\text{C}}\) in \(\varphi\)-\(\theta\) space (black crosses) and corresponding first-order polynomial fit (red solid line). Figure 9: Schematic of calibration procedure (blue box) and subsequent measurement data evaluation (green box) for temperature evaluation. Concentration evaluation is performed in the same manner. gained. In this context, \(\
u_{1}\) must be chosen to enable good film thickness results according to the procedure that is described in Section 3.1 and also to enable the reliable determination of the temperature and concentration. Identifying the most suitable wavenumber combination is a far more complex task. This is due to the huge number of possible combinations, since more than 20.000 discrete wavenumbers have been sampled within the spectrum, leading to more than \(9\times 10^{12}\) possible \(\
u_{1}\)-\(\
u_{2}\)-\(\
u_{3}\)-combinations. Therefore, it is not feasible to evaluate each possible combination. Additionally, within the proposed evaluation strategy, the coefficients for the set of linear fit curves, as well as the resulting common intersection point, must be optimized; this was carried out using a nonlinear least-squares solver in MATLAB (Version 2020b). This coefficient optimization must be performed for each wavenumber combination that is evaluated and assessed within the superordinate wavenumber optimization scheme. The underlying problem that needs to be solved in the wavenumber optimization case is non-convex and of high dimensionality, which leads to the presence of several local minima as opposed to only one global minimum for convex problems. Thus, it is hardly possible to guarantee that the global minimum for the problem is found. The genetic algorithm implemented in MATLAB was used to solve this superordinate optimization problem since it is well suited to deal with problems where multiple local minima are present while avoiding being trapped within a local minimum. Input parameters to the genetic algorithm solver are the complete absorbance spectra of the calibration set between approximately 3800 cm\({}^{-1}\) to 13,000 cm\({}^{-1}\), the corresponding wavenumber vector and the predefined film parameters of interest. Within the genetic algorithm solver (Figure 10, blue box), an initial wavenumber combination is randomly picked, and initial fit coefficients for the calibration are calculated. The latter are gained by independent fits of each curve for the same parameter data, while a first approximation of the intersection point can be calculated where the set of curves shows the smallest deviation. These initial fit coefficients and intersection point coordinates are then passed to the coefficient optimization loop (Figure 10, green box), where the final optimized values are calculated and returned to the genetic algorithm loop.