task_l0_defaults (faber_neuroevolution v1.2.4)
View SourceTask Silo L0: Safe Default Parameters.
Part of the Liquid Conglomerate v2 Task Silo. Provides safe, conservative default parameters that are always active and never disabled.
Purpose
L0 serves as the fallback baseline when L1/L2 are disabled or fail. These defaults are designed to be safe across a wide range of problems: - Moderate mutation rates (not too aggressive, not too conservative) - Balanced selection pressure - Conservative topology mutation (when enabled)
Usage
%% Get default parameters Defaults = task_l0_defaults:get_defaults(), MutationRate = maps:get(mutation_rate, Defaults).
%% Clamp a value to safe bounds SafeRate = task_l0_defaults:clamp(mutation_rate, 0.8). % Returns 0.5 (max)
%% Apply bounds to a full parameter map SafeParams = task_l0_defaults:apply_bounds(UnsafeParams).
Summary
Functions
Apply bounds to all parameters in a map.
Clamp a value to its safe bounds.
Get bounds for a specific parameter.
Get parameter bounds (min, max).
Get default parameter values.
Merge provided parameters with defaults.
Functions
Apply bounds to all parameters in a map.
Any parameter with defined bounds is clamped to [min, max]. Parameters without defined bounds are passed through unchanged.
Clamp a value to its safe bounds.
Returns the value constrained to [min, max] for the given parameter. Returns the value unchanged if no bounds are defined.
Get bounds for a specific parameter.
-spec get_bounds() -> map().
Get parameter bounds (min, max).
These bounds ensure parameters stay within safe, meaningful ranges regardless of what L1/L2 recommend.
-spec get_defaults() -> map().
Get default parameter values.
These are safe starting values for neuroevolution that work across a wide range of problem domains.
Merge provided parameters with defaults.
Missing parameters are filled in from defaults. All parameters are then clamped to safe bounds.