# Evolutionary Maximization of Energy Amount Harvested by Means of Panel of Thermoelectric Modules
## 3 Thermoelectric Panel with Evolutionary MPPT
### Evolutionary MPPT Algorithm Description  
Steps of the evolutionary optimization are collected in an algorithm diagram presented in Figure 3. This original solution is designed for the considered optimization task. In particular, the proposed technique allows to simultaneously search for all control signals duty factors of string sections of the thermovoltaic panel. Below, the details explaining operations and population structure specific for MPPT evolutionary system are presented. Figure 2: TE panel with the individual mini-converter in each section. The proposed application of EA allows to effectively search for the vector \(\mathbf{D}\) of \(N\)-th most suitable coefficients \(d_{1},d_{2},\ldots,d_{N}\) of duty cycles for DC/DC converters of particular TE strings:  
\[\mathbf{D}=\big{[}\quad d_{1}\quad d_{2}\quad\cdots\quad d_{N}\ \big{]}. \tag{3}\]  
The population of \(K\)-th chromosomes (individuals) consists of correction coefficients vectors containing deviations of the currently operated \(\mathbf{D}\), which may assure the best MPP matching:  
\[\mathbf{P}=\left[ \begin{array}{c}\mathbf{C}_{1}\\ \mathbf{C}_{2}\\ \vdots\\ \mathbf{C}_{K}\end{array} \right]=\left[ \begin{array}{ccccc}c_{11}&c_{12}& \cdots&c_{1N}\\ c_{21}&c_{22}&\cdots&c_{2N}\\ &&\vdots\\ c_{K1}&c_{I2}&\cdots&c_{KN}\end{array} \right]. \tag{4}\]  
Initially, after the first execution of the algorithm, all the operational points (3) of TE panel are set up to the middle positions \(D_{MX}/2\) (50% of all the control signals \(x_{n}(t)\) duty cycles), i.e., defined by the assumed regulation resolution of \(D_{MX}\) discrete decimal levels. The quality of this preliminary operational point of the panel is determined. The fitness value of the system is the sum of electric powers received from all the particular TE strings for the vector \(\mathbf{D}\) of the tested duty cycles \(d_{n}\):  
\[Fit(\mathbf{D})=V_{in1}(d_{1})I_{in1}(d_{1})+V_{in2}(d_{2})I_{in2}(d_{2})+ \cdots+V_{inN}(d_{N})I_{inN}(d_{N}), \tag{5}\]  
where \(V_{inn}\) and \(I_{inn}\) are voltage and current registered on the input port of the the \(n\)-th DC/DC converter when \(d_{n}\) of control signal \(x_{n}(t)\) is established. The vector \(\mathbf{C}\) of the best  
Figure 3: The proposed MPPT evolutionary method diagram. corrections coefficients applied during last iteration is zeroed during the begin stage of the algorithm:  
\[\mathbf{C}=\left[ \begin{array}{ccccc}c_{1}&c_{2}&\cdots&c_{N}\end{array}  \right]=[0]. \tag{6}\]  
However, preliminary population \(\mathbf{P}\) is initialized by \(I\) candidates selected randomly from the allowed range \(\langle-C_{MX},\ldots,0,...,C_{MX}\rangle\) dedicated for each respective coefficient \(d_{n}\) correction, i.e., lying on the same position (\(n=1,\ldots,N\)) in chromosome \(\mathbf{D}\). The main loop of evolutionary optimization starts and the new potential duty cycle levels are checked, i.e., the ones obtained for the duty cycles (3) corrected with respective row vector coded in population (4):  
\[\mathbf{D}_{\mathrm{C}}=\left[ \begin{array}{ccccc}\mathbf{D}\\ \mathbf{D}\\ \vdots\\ \mathbf{D}\end{array} \right]+\left[ \begin{array}{ccccc}\mathbf{C}_{1}\\ \mathbf{C}_{2}\\ \vdots\\ \mathbf{C}_{K}\end{array} \right]=\left[ \begin{array}{ccccc}d_{11}&d_{12}& \cdots&d_{1N}\\ d_{21}&d_{22}&\cdots&d_{2N}\\ \vdots\\ d_{K1}&d_{K2}&\cdots&d_{KN}\end{array} \right]. \tag{7}\]  
In the firmware implemented, the fitness marks assured by corrected duties (7) are calculated among \(N\)-th regulation vectors individually for each TE section and full matrix of electric power components is determined:  
\[\mathbf{Fit(D_{C})}=\left[ \begin{array}{ccccc}V_{in1}(d_{11})I_{in1}(d_{11})& V_{in2}(d_{12})I_{in2}(d_{12})&\cdots&V_{inN}(d_{1N})I_{inN}(d_{1N})\\ V_{in1}(d_{21})I_{in1}(d_{21})&V_{in2}(d_{22})I_{in2}(d_{22})&\cdots&V_{inN}(d_{ 2N})I_{inN}(d_{2N})\\ &\vdots\\ V_{in1}(d_{11})I_{in1}(d_{11})&V_{in2}(d_{K2})I_{in2}(d_{K2})&\cdots&V_{inN}(d_{ KN})I_{inN}(d_{KN})\end{array}