\doxysection{E\+:/.WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs/\+Inc/evolve\+\_\+optimizer.h File Reference}
\hypertarget{evolve__optimizer_8h}{}\label{evolve__optimizer_8h}\index{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibs/Inc/evolve\_optimizer.h@{E:/.WORK/STM32/STM32\_ExtendedLibs/MyLibs/Inc/evolve\_optimizer.h}}


Заголовочный файл для адаптивного подбора параметров  


{\ttfamily \#include "{}mylibs\+\_\+defs.\+h"{}}\newline
{\ttfamily \#include $<$stdint.\+h$>$}\newline
{\ttfamily \#include $<$stdlib.\+h$>$}\newline
Include dependency graph for evolve\+\_\+optimizer.\+h\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=295pt]{evolve__optimizer_8h__incl}
\end{center}
\end{figure}
This graph shows which files directly or indirectly include this file\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=212pt]{evolve__optimizer_8h__dep__incl}
\end{center}
\end{figure}
\doxysubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{struct_evolve_optimizer__t}{Evolve\+Optimizer\+\_\+t}}
\begin{DoxyCompactList}\small\item\em Структура эволюционного оптимизатора \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \mbox{\hyperlink{group___e_v_o_l_v_e___o_p_t_i_m_i_z_e_r_ga83abbcabaff9111c03ae2475ee72ea3e}{PARAM\+\_\+\+SCALE}}(x,  min\+\_\+val,  max\+\_\+val)
\begin{DoxyCompactList}\small\item\em Линейное масштабирование x из диапазона \mbox{[}min\+\_\+val, max\+\_\+val\mbox{]} в диапазон \mbox{[}0, 1) \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{group___e_v_o_l_v_e___o_p_t_i_m_i_z_e_r_gaa1d5510fe5f0bd989473f3ebe324bde3}{PARAM\+\_\+\+UNSCALE}}(val,  min\+\_\+val,  max\+\_\+val)
\begin{DoxyCompactList}\small\item\em Обратное линейное масштабирование значения из \mbox{[}0, 1) в диапазон \mbox{[}min\+\_\+val, max\+\_\+val\mbox{]}. \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{group___e_v_o_l_v_e___o_p_t_i_m_i_z_e_r_ga2f2b1be34ad4eb1bf3267237200cd6c6}{EVOLVE\+\_\+\+MUTATION\+\_\+\+MIN\+\_\+\+PCT}}~10
\begin{DoxyCompactList}\small\item\em Минимальная мутация (в процентах от Loss) \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{group___e_v_o_l_v_e___o_p_t_i_m_i_z_e_r_ga861c1c6a503c21441abcec0d57b848bc}{EVOLVE\+\_\+\+MUTATION\+\_\+\+MAX\+\_\+\+PCT}}~100
\begin{DoxyCompactList}\small\item\em Максимальная мутация (в процентах от Loss) \end{DoxyCompactList}\item 
\#define \mbox{\hyperlink{group___e_v_o_l_v_e___o_p_t_i_m_i_z_e_r_ga38607e23d9234524bc7de5869b15b8eb}{ELOVLE\+\_\+\+N\+\_\+\+ELITE\+\_\+\+CANDIDATE}}~2
\begin{DoxyCompactList}\small\item\em Количество кандидатов, которые проходят в поколение без изменений (по умолчанию 2) \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\+\_\+\+\_\+\+STATIC\+\_\+\+INLINE int \mbox{\hyperlink{group___e_v_o_l_v_e___o_p_t_i_m_i_z_e_r_ga4e3ea118b5b9068619c57724a925ba21}{Evolve\+Optimizer\+\_\+\+Init}} (\mbox{\hyperlink{struct_evolve_optimizer__t}{Evolve\+Optimizer\+\_\+t}} \texorpdfstring{$\ast$}{*}opt, uint16\+\_\+t n\+\_\+params, uint16\+\_\+t n\+\_\+cand, uint16\+\_\+t n\+\_\+best, float mutation\+\_\+amp, float \texorpdfstring{$\ast$}{*}start\+\_\+params)
\begin{DoxyCompactList}\small\item\em Инициализация эволюционного оптимизатора. \end{DoxyCompactList}\item 
\+\_\+\+\_\+\+STATIC\+\_\+\+INLINE int \mbox{\hyperlink{group___e_v_o_l_v_e___o_p_t_i_m_i_z_e_r_gaef44a1f3298514569cc2b396a92101ef}{Evolve\+Optimizer\+\_\+\+Step}} (\mbox{\hyperlink{struct_evolve_optimizer__t}{Evolve\+Optimizer\+\_\+t}} \texorpdfstring{$\ast$}{*}opt, float \texorpdfstring{$\ast$}{*}params, float loss)
\begin{DoxyCompactList}\small\item\em Один шаг эволюционного оптимизатора. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Заголовочный файл для адаптивного подбора параметров 



Definition in file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.

