добавление 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

@@ -79,8 +79,8 @@
#define HF_HandleFault(...)
#endif
#ifdef INCLUDE_EVOLVE_OPTIMIZER
#include "evolve_optimizer.h"
#ifdef INCLUDE_GEN_OPTIMIZER
#include "gen_optimizer.h"
#else
typedef struct {
uint16_t n_params;
@@ -89,13 +89,29 @@ typedef struct {
uint16_t iq_mutation;
int32_t loss[0];
int32_t candidates[0][0];
} EvolveOptimizer_t;
#define EvolveOptimizer_Init(opt, n_params, n_cand, n_best, iq_mutation, start_params)
#define EvolveOptimizer_Step(opt, params, LossFunc)
} GenOptimizer_t;
#define GenOptimizer_Init(opt, n_params, n_cand, n_best, iq_mutation, start_params)
#define GenOptimizer_Step(opt, params, LossFunc)
#define PARAM_SCALE_Q16(x, min_val, max_val) (x)
#define PARAM_UNSCALE_Q16(q16_val, min_val, max_val) (q16_val)
#endif
#ifdef INCLUDE_BENCH_TEST
#include "bench_time.h"
#else //BENCH_TIME_ENABLE
#define BenchTime_Init()
#define BenchTime_Start(channel, ticks, tick_period) 0
#define BenchTime_End(channel, ticks) 0
#define BenchTime_GetMin(channel) 0
#define BenchTime_GetMax(channel) 0
#define BenchTime_GetAverage(channel) 0
#define BenchTime_GetCount(channel) 0
#define BenchTime_GetLast(channel) 0
#define BenchTime_ResetStats(channel)
#endif //BENCH_TIME_ENABLE
#ifdef INCLUDE_GENERAL_PERIPH_LIBS
#include "__general_flash.h"