добавление bench_time и рефакторинг генетического алгоритма

This commit is contained in:
2025-10-27 09:39:57 +03:00
parent 5c4c815961
commit 15c0e3755d
294 changed files with 9147 additions and 2935 deletions

View File

@@ -59,44 +59,61 @@
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00055}00055\ }
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00056}00056\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00057}00057\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00058}00058\ \textcolor{comment}{\ \ *\ @addtogroup\ EVOLVE\_CONFIG\ \ \ Evolve\ configs}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00058}00058\ \textcolor{comment}{\ \ *\ @addtogroup\ GEN\_CONFIG\ \ \ Genetic\ configs}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00059}00059\ \textcolor{comment}{\ \ *\ @ingroup\ \ \ \ MYLIBS\_CONFIG}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00060}00060\ \textcolor{comment}{\ \ *\ @brief\ \ \ \ \ \ Конфигурация\ однослойного\ персептрона\ и\ алгоритма\ обучения}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00060}00060\ \textcolor{comment}{\ \ *\ @brief\ \ \ \ \ \ Конфигурация\ генетического\ алгоритма\ обучения}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00061}00061\ \textcolor{comment}{\ \ *\ @\{}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00062}00062\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00063}00063\ }
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00064}\mbox{\hyperlink{group___e_v_o_l_v_e___c_o_n_f_i_g_ga2cac097081444a7a9b040f4b11550e47}{00064}}\ \textcolor{preprocessor}{\#define\ ENABLE\_EVOLVE\_OPTIMIZATION\ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ Включить\ оптимизацию\ параметров}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00065}\mbox{\hyperlink{group___e_v_o_l_v_e___c_o_n_f_i_g_ga80d6162495fc3776d8902610657d4fee}{00065}}\ \textcolor{preprocessor}{\#define\ EVOLVE\_MAX\_PARAMS\ \ \ \ \ \ \ 20\ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ Максимальное\ количество\ параметров}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00066}\mbox{\hyperlink{group___e_v_o_l_v_e___c_o_n_f_i_g_ga7c1396e5c95c766afccdb45cbfcf5971}{00066}}\ \textcolor{preprocessor}{\#define\ EVOLVE\_MAX\_CANDIDATES\ \ \ 100\ \ \ \ \ \ \ }\textcolor{comment}{///<\ Максимальное\ количество\ кандидатов\ для\ обучения}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00064}\mbox{\hyperlink{group___g_e_n___c_o_n_f_i_g_gae6d1db3c0b21f67cb0db2673d207b62c}{00064}}\ \textcolor{preprocessor}{\#define\ GEN\_OPTIMIZATION\_ENABLE\ \ \ \ \ \ \ }\textcolor{comment}{///<\ Включить\ оптимизацию\ параметров}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00065}\mbox{\hyperlink{group___g_e_n___c_o_n_f_i_g_ga8daf4b266a95353d580bd7946f47c0ab}{00065}}\ \textcolor{preprocessor}{\#define\ GEN\_MAX\_PARAMS\ \ \ \ \ \ \ 20\ \ \ \ \ \ \ }\textcolor{comment}{///<\ Максимальное\ количество\ параметров}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00066}\mbox{\hyperlink{group___g_e_n___c_o_n_f_i_g_ga201cffde04ebc6540869c74bd1dae869}{00066}}\ \textcolor{preprocessor}{\#define\ GEN\_MAX\_CANDIDATES\ \ \ 100\ \ \ \ \ \ }\textcolor{comment}{///<\ Максимальное\ количество\ кандидатов\ для\ обучения}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00067}00067\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00068}00068\ \textcolor{comment}{/**\ EVOLVE\_CONFIG}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00068}00068\ \textcolor{comment}{/**\ GEN\_CONFIG}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00069}00069\ \textcolor{comment}{\ \ *\ @\}}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00070}00070\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00071}00071\ }
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00072}00072\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00073}00073\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00074}00074\ \textcolor{comment}{\ \ *\ @addtogroup\ LIBS\_CONFIG\ \ \ Libraries\ configs}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00074}00074\ \textcolor{comment}{\ \ *\ @addtogroup\ GEN\_CONFIG\ \ \ Genetic\ configs}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00075}00075\ \textcolor{comment}{\ \ *\ @ingroup\ \ \ \ MYLIBS\_CONFIG}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00076}00076\ \textcolor{comment}{\ \ *\ @brief\ \ \ \ \ \ Подключение\ различных\ модулей\ библиотеки}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00076}00076\ \textcolor{comment}{\ \ *\ @brief\ \ \ \ \ \ Конфигурация\ генетического\ алгоритма\ обучения}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00077}00077\ \textcolor{comment}{\ \ *\ @\{}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00078}00078\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00079}00079\ }
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00080}\mbox{\hyperlink{group___l_i_b_s___c_o_n_f_i_g_ga9c853b02c22f26023c34d1d404b6d653}{00080}}\ \textcolor{preprocessor}{\#define\ local\_time()\ \ \ \ \ \ uwTick\ \ \ \ \ \ }\textcolor{comment}{///<\ Локальное\ время}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00081}00081\ }
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00082}\mbox{\hyperlink{group___l_i_b_s___c_o_n_f_i_g_ga66560656d080d6551627a19dfb847c66}{00082}}\ \textcolor{preprocessor}{\#define\ INCLUDE\_EVOLVE\_OPTIMIZER\ \ \ \ \ \ }\textcolor{comment}{///<\ Подключить\ библиотеку\ для\ оптимизации\ параметров}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00083}\mbox{\hyperlink{group___l_i_b_s___c_o_n_f_i_g_gaf4ddb2a71ec0d05c2480e197cd17c0be}{00083}}\ \textcolor{preprocessor}{\#define\ INCLUDE\_BIT\_ACCESS\_LIB\ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ Подключить\ библиотеку\ с\ typedef\ с\ битовыми\ полями}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00084}\mbox{\hyperlink{group___l_i_b_s___c_o_n_f_i_g_ga4403055986b70bb02b8d37073a122e32}{00084}}\ \textcolor{preprocessor}{\#define\ INCLUDE\_TRACKERS\_LIB\ \ \ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ Подключить\ библиотеку\ с\ трекерами}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00085}\mbox{\hyperlink{group___l_i_b_s___c_o_n_f_i_g_ga0a3ca94b616997069dd53e2c6c2687d7}{00085}}\ \textcolor{preprocessor}{\#define\ INCLUDE\_TRACE\_LIB\ \ \ \ \ \ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ Подключить\ библиотеку\ с\ трейсами}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00086}\mbox{\hyperlink{group___l_i_b_s___c_o_n_f_i_g_ga181a46326e46b60afb160190832c7281}{00086}}\ \textcolor{preprocessor}{\#define\ INCLUDE\_GENERAL\_PERIPH\_LIBS\ \ \ }\textcolor{comment}{///<\ Подключить\ библиотеку\ с\ периферией}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00087}\mbox{\hyperlink{group___l_i_b_s___c_o_n_f_i_g_ga57c369737d5c0cfdb7baeecba0a4b151}{00087}}\ \textcolor{preprocessor}{\#define\ FREERTOS\_DELAY\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ Использовать\ FreeRTOS\ задержку,\ вместо\ HAL}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00088}00088\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00089}00089\ \textcolor{comment}{/**\ LIBS\_CONFIG}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00090}00090\ \textcolor{comment}{\ \ *\ @\}}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00091}00091\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00092}00092\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00093}00093\ \textcolor{comment}{/**\ MYLIBS\_CONFIG}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00094}00094\ \textcolor{comment}{\ \ *\ @\}}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00080}00080\ }
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00081}\mbox{\hyperlink{group___g_e_n___c_o_n_f_i_g_ga67c3c54503b9bbd5d175ac46d37866d9}{00081}}\ \textcolor{preprocessor}{\#define\ BENCH\_TIME\_ENABLE\ \ \ \ \ \ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ Включить\ бенч\ времени}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00082}\mbox{\hyperlink{group___g_e_n___c_o_n_f_i_g_ga74fdf777ceefa5e7d67120fbda4cde52}{00082}}\ \textcolor{preprocessor}{\#define\ BENCH\_TIME\_MAX\_CHANNELS\ 16\ \ \ \ }\textcolor{comment}{///<\ Максимальное\ количество\ каналов\ измерения}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00083}00083\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00084}00084\ \textcolor{comment}{/**\ GEN\_CONFIG}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00085}00085\ \textcolor{comment}{\ \ *\ @\}}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00086}00086\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00087}00087\ }
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00088}00088\ }
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00089}00089\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00090}00090\ \textcolor{comment}{/**\ }}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00091}00091\ \textcolor{comment}{\ \ *\ @addtogroup\ LIBS\_CONFIG\ \ \ Libraries\ configs}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00092}00092\ \textcolor{comment}{\ \ *\ @ingroup\ \ \ \ MYLIBS\_CONFIG}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00093}00093\ \textcolor{comment}{\ \ *\ @brief\ \ \ \ \ \ Подключение\ различных\ модулей\ библиотеки}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00094}00094\ \textcolor{comment}{\ \ *\ @\{}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00095}00095\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00096}00096\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\_\_MYLIBS\_CONFIG\_H\_}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00096}00096\ }
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00097}\mbox{\hyperlink{group___l_i_b_s___c_o_n_f_i_g_ga9c853b02c22f26023c34d1d404b6d653}{00097}}\ \textcolor{preprocessor}{\#define\ local\_time()\ \ \ \ \ \ uwTick\ \ \ \ \ \ }\textcolor{comment}{///<\ Локальное\ время}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00098}00098\ }
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00099}\mbox{\hyperlink{group___l_i_b_s___c_o_n_f_i_g_ga3cdc9ef47fd3ff080d38481295327692}{00099}}\ \textcolor{preprocessor}{\#define\ INCLUDE\_GEN\_OPTIMIZER\ \ \ \ \ \ }\textcolor{comment}{///<\ Подключить\ библиотеку\ для\ оптимизации\ параметров}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00100}\mbox{\hyperlink{group___l_i_b_s___c_o_n_f_i_g_gaf4ddb2a71ec0d05c2480e197cd17c0be}{00100}}\ \textcolor{preprocessor}{\#define\ INCLUDE\_BIT\_ACCESS\_LIB\ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ Подключить\ библиотеку\ с\ typedef\ с\ битовыми\ полями}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00101}\mbox{\hyperlink{group___l_i_b_s___c_o_n_f_i_g_ga4403055986b70bb02b8d37073a122e32}{00101}}\ \textcolor{preprocessor}{\#define\ INCLUDE\_TRACKERS\_LIB\ \ \ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ Подключить\ библиотеку\ с\ трекерами}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00102}\mbox{\hyperlink{group___l_i_b_s___c_o_n_f_i_g_ga0a3ca94b616997069dd53e2c6c2687d7}{00102}}\ \textcolor{preprocessor}{\#define\ INCLUDE\_TRACE\_LIB\ \ \ \ \ \ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ Подключить\ библиотеку\ с\ трейсами}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00103}\mbox{\hyperlink{group___l_i_b_s___c_o_n_f_i_g_ga181a46326e46b60afb160190832c7281}{00103}}\ \textcolor{preprocessor}{\#define\ INCLUDE\_GENERAL\_PERIPH\_LIBS\ \ \ }\textcolor{comment}{///<\ Подключить\ библиотеку\ с\ периферией}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00104}\mbox{\hyperlink{group___l_i_b_s___c_o_n_f_i_g_ga57c369737d5c0cfdb7baeecba0a4b151}{00104}}\ \textcolor{preprocessor}{\#define\ FREERTOS\_DELAY\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }\textcolor{comment}{///<\ Использовать\ FreeRTOS\ задержку,\ вместо\ HAL}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00105}00105\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00106}00106\ \textcolor{comment}{/**\ LIBS\_CONFIG}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00107}00107\ \textcolor{comment}{\ \ *\ @\}}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00108}00108\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00109}00109\ \textcolor{comment}{}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00110}00110\ \textcolor{comment}{/**\ MYLIBS\_CONFIG}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00111}00111\ \textcolor{comment}{\ \ *\ @\}}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00112}00112\ \textcolor{comment}{\ \ */}}
\DoxyCodeLine{\Hypertarget{mylibs__config_8h_source_l00113}00113\ \textcolor{preprocessor}{\#endif\ }\textcolor{comment}{//\_\_MYLIBS\_CONFIG\_H\_}}
\end{DoxyCode}