evovle перенесен на float + добавлены некоторые опциональные параметры

т.к. нет особо смысла супер быстро рассчитывать параметры. это просто вспомогательный инструмент для их параметров
This commit is contained in:
2025-10-20 13:02:49 +03:00
parent 89babe10c9
commit 03a203fe2a
364 changed files with 7523 additions and 7886 deletions

View File

@@ -12,19 +12,21 @@
\doxysubsubsection*{Public Attributes}
\begin{DoxyCompactItemize}
\item
float \mbox{\hyperlink{struct_evolve_optimizer__t_a80eb0b8525b6bb838484f5922b9d8f7c}{stability}}
\begin{DoxyCompactList}\small\item\em Коэффициент насколько стабильная популяция (0..1)(\doxylink{struct_evolve_optimizer__t_ac35c7ca8cede4ab9c53a2845a91cd1b1}{n\+\_\+cand}) \end{DoxyCompactList}\item
uint16\+\_\+t \mbox{\hyperlink{struct_evolve_optimizer__t_a1c270fce82e0c97e6c88fd0971c1eed8}{n\+\_\+params}}
\begin{DoxyCompactList}\small\item\em Количество параметров \end{DoxyCompactList}\item
uint16\+\_\+t \mbox{\hyperlink{struct_evolve_optimizer__t_ac35c7ca8cede4ab9c53a2845a91cd1b1}{n\+\_\+cand}}
\begin{DoxyCompactList}\small\item\em Количество кандидатов \end{DoxyCompactList}\item
\begin{DoxyCompactList}\small\item\em Количество кандидатов в популяции \end{DoxyCompactList}\item
uint16\+\_\+t \mbox{\hyperlink{struct_evolve_optimizer__t_a950cd70cb6bff33b78ad35ee58c729a6}{n\+\_\+best}}
\begin{DoxyCompactList}\small\item\em Количество лучших, усредняемых \end{DoxyCompactList}\item
uint16\+\_\+t \mbox{\hyperlink{struct_evolve_optimizer__t_a5391277564b54e2271856a2466033df5}{iq\+\_\+mutation}}
\begin{DoxyCompactList}\small\item\em Амплитуда мутации в Q16.\+16. \end{DoxyCompactList}\item
float \mbox{\hyperlink{struct_evolve_optimizer__t_af779c7aeba0053e36cee7aade160f1c8}{mutation\+\_\+amp}}
\begin{DoxyCompactList}\small\item\em Амплитуда мутации (0..1) \end{DoxyCompactList}\item
uint16\+\_\+t \mbox{\hyperlink{struct_evolve_optimizer__t_a0ae0e63ba351335d4445d927991c64ae}{cand\+\_\+index}}
\begin{DoxyCompactList}\small\item\em Индекс кандидата для обработки \end{DoxyCompactList}\item
int32\+\_\+t \mbox{\hyperlink{struct_evolve_optimizer__t_ac723b265a3d43b754489f14310314f0d}{loss}} \mbox{[}100\mbox{]}
float \mbox{\hyperlink{struct_evolve_optimizer__t_a93f628397c2f8d4027f2906752b650df}{loss}} \mbox{[}100\mbox{]}
\begin{DoxyCompactList}\small\item\em Loss для каждого кандидата \end{DoxyCompactList}\item
int32\+\_\+t \mbox{\hyperlink{struct_evolve_optimizer__t_a61bd0c8ae322a79936ba1f2ae22e0e0d}{candidates}} \mbox{[}100\mbox{]}\mbox{[}20\mbox{]}
float \mbox{\hyperlink{struct_evolve_optimizer__t_aec67667fd1f1533e693e41c79bc28da4}{candidates}} \mbox{[}100\mbox{]}\mbox{[}20\mbox{]}
\begin{DoxyCompactList}\small\item\em Параметры кандидатов \end{DoxyCompactList}\item
uint16\+\_\+t \mbox{\hyperlink{struct_evolve_optimizer__t_a74b81df1c298c99162310f3f7d91735a}{sorted\+\_\+idx}} \mbox{[}100\mbox{]}
\begin{DoxyCompactList}\small\item\em Индексы отсортированных кандидатов \end{DoxyCompactList}\end{DoxyCompactItemize}
@@ -33,18 +35,30 @@ uint16\+\_\+t \mbox{\hyperlink{struct_evolve_optimizer__t_a74b81df1c298c99162310
\doxysubsection{Detailed Description}
Структура эволюционного оптимизатора
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00087}{87}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00102}{102}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
\label{doc-variable-members}
\Hypertarget{struct_evolve_optimizer__t_doc-variable-members}
\doxysubsection{Member Data Documentation}
\Hypertarget{struct_evolve_optimizer__t_a1c270fce82e0c97e6c88fd0971c1eed8}\index{EvolveOptimizer\_t@{EvolveOptimizer\_t}!n\_params@{n\_params}}
\Hypertarget{struct_evolve_optimizer__t_a80eb0b8525b6bb838484f5922b9d8f7c}\label{struct_evolve_optimizer__t_a80eb0b8525b6bb838484f5922b9d8f7c}
\index{EvolveOptimizer\_t@{EvolveOptimizer\_t}!stability@{stability}}
\index{stability@{stability}!EvolveOptimizer\_t@{EvolveOptimizer\_t}}
\doxysubsubsection{\texorpdfstring{stability}{stability}}
{\footnotesize\ttfamily float Evolve\+Optimizer\+\_\+t\+::stability}
Коэффициент насколько стабильная популяция (0..1)(\doxylink{struct_evolve_optimizer__t_ac35c7ca8cede4ab9c53a2845a91cd1b1}{n\+\_\+cand})
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00103}{103}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
\Hypertarget{struct_evolve_optimizer__t_a1c270fce82e0c97e6c88fd0971c1eed8}\label{struct_evolve_optimizer__t_a1c270fce82e0c97e6c88fd0971c1eed8}
\index{EvolveOptimizer\_t@{EvolveOptimizer\_t}!n\_params@{n\_params}}
\index{n\_params@{n\_params}!EvolveOptimizer\_t@{EvolveOptimizer\_t}}
\doxysubsubsection{\texorpdfstring{n\_params}{n\_params}}
{\footnotesize\ttfamily \label{struct_evolve_optimizer__t_a1c270fce82e0c97e6c88fd0971c1eed8}
uint16\+\_\+t Evolve\+Optimizer\+\_\+t\+::n\+\_\+params}
{\footnotesize\ttfamily uint16\+\_\+t Evolve\+Optimizer\+\_\+t\+::n\+\_\+params}
@@ -52,27 +66,27 @@ uint16\+\_\+t Evolve\+Optimizer\+\_\+t\+::n\+\_\+params}
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00088}{88}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00104}{104}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
\Hypertarget{struct_evolve_optimizer__t_ac35c7ca8cede4ab9c53a2845a91cd1b1}\index{EvolveOptimizer\_t@{EvolveOptimizer\_t}!n\_cand@{n\_cand}}
\Hypertarget{struct_evolve_optimizer__t_ac35c7ca8cede4ab9c53a2845a91cd1b1}\label{struct_evolve_optimizer__t_ac35c7ca8cede4ab9c53a2845a91cd1b1}
\index{EvolveOptimizer\_t@{EvolveOptimizer\_t}!n\_cand@{n\_cand}}
\index{n\_cand@{n\_cand}!EvolveOptimizer\_t@{EvolveOptimizer\_t}}
\doxysubsubsection{\texorpdfstring{n\_cand}{n\_cand}}
{\footnotesize\ttfamily \label{struct_evolve_optimizer__t_ac35c7ca8cede4ab9c53a2845a91cd1b1}
uint16\+\_\+t Evolve\+Optimizer\+\_\+t\+::n\+\_\+cand}
{\footnotesize\ttfamily uint16\+\_\+t Evolve\+Optimizer\+\_\+t\+::n\+\_\+cand}
Количество кандидатов
Количество кандидатов в популяции
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00089}{89}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00105}{105}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
\Hypertarget{struct_evolve_optimizer__t_a950cd70cb6bff33b78ad35ee58c729a6}\index{EvolveOptimizer\_t@{EvolveOptimizer\_t}!n\_best@{n\_best}}
\Hypertarget{struct_evolve_optimizer__t_a950cd70cb6bff33b78ad35ee58c729a6}\label{struct_evolve_optimizer__t_a950cd70cb6bff33b78ad35ee58c729a6}
\index{EvolveOptimizer\_t@{EvolveOptimizer\_t}!n\_best@{n\_best}}
\index{n\_best@{n\_best}!EvolveOptimizer\_t@{EvolveOptimizer\_t}}
\doxysubsubsection{\texorpdfstring{n\_best}{n\_best}}
{\footnotesize\ttfamily \label{struct_evolve_optimizer__t_a950cd70cb6bff33b78ad35ee58c729a6}
uint16\+\_\+t Evolve\+Optimizer\+\_\+t\+::n\+\_\+best}
{\footnotesize\ttfamily uint16\+\_\+t Evolve\+Optimizer\+\_\+t\+::n\+\_\+best}
@@ -80,27 +94,27 @@ uint16\+\_\+t Evolve\+Optimizer\+\_\+t\+::n\+\_\+best}
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00090}{90}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00106}{106}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
\Hypertarget{struct_evolve_optimizer__t_a5391277564b54e2271856a2466033df5}\index{EvolveOptimizer\_t@{EvolveOptimizer\_t}!iq\_mutation@{iq\_mutation}}
\index{iq\_mutation@{iq\_mutation}!EvolveOptimizer\_t@{EvolveOptimizer\_t}}
\doxysubsubsection{\texorpdfstring{iq\_mutation}{iq\_mutation}}
{\footnotesize\ttfamily \label{struct_evolve_optimizer__t_a5391277564b54e2271856a2466033df5}
uint16\+\_\+t Evolve\+Optimizer\+\_\+t\+::iq\+\_\+mutation}
\Hypertarget{struct_evolve_optimizer__t_af779c7aeba0053e36cee7aade160f1c8}\label{struct_evolve_optimizer__t_af779c7aeba0053e36cee7aade160f1c8}
\index{EvolveOptimizer\_t@{EvolveOptimizer\_t}!mutation\_amp@{mutation\_amp}}
\index{mutation\_amp@{mutation\_amp}!EvolveOptimizer\_t@{EvolveOptimizer\_t}}
\doxysubsubsection{\texorpdfstring{mutation\_amp}{mutation\_amp}}
{\footnotesize\ttfamily float Evolve\+Optimizer\+\_\+t\+::mutation\+\_\+amp}
Амплитуда мутации в Q16.\+16.
Амплитуда мутации (0..1)
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00091}{91}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00107}{107}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
\Hypertarget{struct_evolve_optimizer__t_a0ae0e63ba351335d4445d927991c64ae}\index{EvolveOptimizer\_t@{EvolveOptimizer\_t}!cand\_index@{cand\_index}}
\Hypertarget{struct_evolve_optimizer__t_a0ae0e63ba351335d4445d927991c64ae}\label{struct_evolve_optimizer__t_a0ae0e63ba351335d4445d927991c64ae}
\index{EvolveOptimizer\_t@{EvolveOptimizer\_t}!cand\_index@{cand\_index}}
\index{cand\_index@{cand\_index}!EvolveOptimizer\_t@{EvolveOptimizer\_t}}
\doxysubsubsection{\texorpdfstring{cand\_index}{cand\_index}}
{\footnotesize\ttfamily \label{struct_evolve_optimizer__t_a0ae0e63ba351335d4445d927991c64ae}
uint16\+\_\+t Evolve\+Optimizer\+\_\+t\+::cand\+\_\+index}
{\footnotesize\ttfamily uint16\+\_\+t Evolve\+Optimizer\+\_\+t\+::cand\+\_\+index}
@@ -108,13 +122,13 @@ uint16\+\_\+t Evolve\+Optimizer\+\_\+t\+::cand\+\_\+index}
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00092}{92}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00108}{108}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
\Hypertarget{struct_evolve_optimizer__t_ac723b265a3d43b754489f14310314f0d}\index{EvolveOptimizer\_t@{EvolveOptimizer\_t}!loss@{loss}}
\Hypertarget{struct_evolve_optimizer__t_a93f628397c2f8d4027f2906752b650df}\label{struct_evolve_optimizer__t_a93f628397c2f8d4027f2906752b650df}
\index{EvolveOptimizer\_t@{EvolveOptimizer\_t}!loss@{loss}}
\index{loss@{loss}!EvolveOptimizer\_t@{EvolveOptimizer\_t}}
\doxysubsubsection{\texorpdfstring{loss}{loss}}
{\footnotesize\ttfamily \label{struct_evolve_optimizer__t_ac723b265a3d43b754489f14310314f0d}
int32\+\_\+t Evolve\+Optimizer\+\_\+t\+::loss\mbox{[}100\mbox{]}}
{\footnotesize\ttfamily float Evolve\+Optimizer\+\_\+t\+::loss\mbox{[}100\mbox{]}}
@@ -122,13 +136,13 @@ Loss для каждого кандидата
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00093}{93}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00109}{109}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
\Hypertarget{struct_evolve_optimizer__t_a61bd0c8ae322a79936ba1f2ae22e0e0d}\index{EvolveOptimizer\_t@{EvolveOptimizer\_t}!candidates@{candidates}}
\Hypertarget{struct_evolve_optimizer__t_aec67667fd1f1533e693e41c79bc28da4}\label{struct_evolve_optimizer__t_aec67667fd1f1533e693e41c79bc28da4}
\index{EvolveOptimizer\_t@{EvolveOptimizer\_t}!candidates@{candidates}}
\index{candidates@{candidates}!EvolveOptimizer\_t@{EvolveOptimizer\_t}}
\doxysubsubsection{\texorpdfstring{candidates}{candidates}}
{\footnotesize\ttfamily \label{struct_evolve_optimizer__t_a61bd0c8ae322a79936ba1f2ae22e0e0d}
int32\+\_\+t Evolve\+Optimizer\+\_\+t\+::candidates\mbox{[}100\mbox{]}\mbox{[}20\mbox{]}}
{\footnotesize\ttfamily float Evolve\+Optimizer\+\_\+t\+::candidates\mbox{[}100\mbox{]}\mbox{[}20\mbox{]}}
@@ -136,13 +150,13 @@ int32\+\_\+t Evolve\+Optimizer\+\_\+t\+::candidates\mbox{[}100\mbox{]}\mbox{[}20
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00094}{94}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00110}{110}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
\Hypertarget{struct_evolve_optimizer__t_a74b81df1c298c99162310f3f7d91735a}\index{EvolveOptimizer\_t@{EvolveOptimizer\_t}!sorted\_idx@{sorted\_idx}}
\Hypertarget{struct_evolve_optimizer__t_a74b81df1c298c99162310f3f7d91735a}\label{struct_evolve_optimizer__t_a74b81df1c298c99162310f3f7d91735a}
\index{EvolveOptimizer\_t@{EvolveOptimizer\_t}!sorted\_idx@{sorted\_idx}}
\index{sorted\_idx@{sorted\_idx}!EvolveOptimizer\_t@{EvolveOptimizer\_t}}
\doxysubsubsection{\texorpdfstring{sorted\_idx}{sorted\_idx}}
{\footnotesize\ttfamily \label{struct_evolve_optimizer__t_a74b81df1c298c99162310f3f7d91735a}
uint16\+\_\+t Evolve\+Optimizer\+\_\+t\+::sorted\+\_\+idx\mbox{[}100\mbox{]}}
{\footnotesize\ttfamily uint16\+\_\+t Evolve\+Optimizer\+\_\+t\+::sorted\+\_\+idx\mbox{[}100\mbox{]}}
@@ -150,10 +164,10 @@ uint16\+\_\+t Evolve\+Optimizer\+\_\+t\+::sorted\+\_\+idx\mbox{[}100\mbox{]}}
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00095}{95}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
Definition at line \mbox{\hyperlink{evolve__optimizer_8h_source_l00111}{111}} of file \mbox{\hyperlink{evolve__optimizer_8h_source}{evolve\+\_\+optimizer.\+h}}.
The documentation for this struct was generated from the following file\+:\begin{DoxyCompactItemize}
\item
E\+:/.\+WORK/\+STM32/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Inc/\mbox{\hyperlink{evolve__optimizer_8h}{evolve\+\_\+optimizer.\+h}}\end{DoxyCompactItemize}
F\+:/\+Work/\+Projects/\+STM/.\+Elementary/\+STM32\+\_\+\+Extended\+Libs/\+My\+Libs\+General/\+Inc/\mbox{\hyperlink{evolve__optimizer_8h}{evolve\+\_\+optimizer.\+h}}\end{DoxyCompactItemize}