resource_l0_morphology (faber_neuroevolution v1.2.4)
View SourceResource Silo L0 Morphology - TWEANN sensor/actuator definitions.
Part of the Liquid Conglomerate v2 architecture. Defines the neural network morphology for the Resource Silo's L0 reactive controller.
Architecture
L0 is a TWEANN (Topology and Weight Evolving Artificial Neural Network) that: - Takes 15 sensor inputs (13 resource + 2 self-play archive) - Produces 10 actuator outputs (8 resource + 1 archive control + 1 timeout control) - Has 8 hyperparameters that L1 can tune - Has 5 L1 hyperparameters that L2 can tune
Time Constant
tau_L0 = 5 seconds (fast adaptation for resource management)
Summary
Functions
Number of actuators (neural network outputs).
Ordered list of actuator names.
Get specification for an actuator.
Get bounds for L0 hyperparameters.
Get default values for L0 hyperparameters.
Get bounds for L1 hyperparameters.
Get default values for L1 hyperparameters.
Get specification for an L0 hyperparameter.
List of L0 hyperparameter names.
Get specification for an L1 hyperparameter.
List of L1 hyperparameter names.
Number of sensors (neural network inputs).
Ordered list of sensor names.
Get specification for a sensor.
L0 time constant - 5 seconds for reactive resource control.
L1 time constant - 30 seconds for tactical adaptation.
L2 time constant - 5 minutes for strategic learning.
Functions
-spec actuator_count() -> pos_integer().
Number of actuators (neural network outputs).
-spec actuator_names() -> [atom()].
Ordered list of actuator names.
Get specification for an actuator.
Returns a map with: - name: Actuator name - range: {Min, Max} target range (for denormalization) - target: What system this affects - description: Human-readable description
-spec get_l0_bounds() -> map().
Get bounds for L0 hyperparameters.
-spec get_l0_defaults() -> map().
Get default values for L0 hyperparameters.
-spec get_l1_bounds() -> map().
Get bounds for L1 hyperparameters.
-spec get_l1_defaults() -> map().
Get default values for L1 hyperparameters.
Get specification for an L0 hyperparameter.
-spec l0_hyperparameters() -> [atom()].
List of L0 hyperparameter names.
Get specification for an L1 hyperparameter.
-spec l1_hyperparameters() -> [atom()].
List of L1 hyperparameter names.
Note: These are called "meta-parameters" from L1's perspective, but "hyperparameters" from L2's perspective.
-spec sensor_count() -> pos_integer().
Number of sensors (neural network inputs).
-spec sensor_names() -> [atom()].
Ordered list of sensor names.
Get specification for a sensor.
Returns a map with: - name: Sensor name - range: {Min, Max} normalized range - source: Where the data comes from - description: Human-readable description
-spec tau_l0() -> pos_integer().
L0 time constant - 5 seconds for reactive resource control.
-spec tau_l1() -> pos_integer().
L1 time constant - 30 seconds for tactical adaptation.
-spec tau_l2() -> pos_integer().
L2 time constant - 5 minutes for strategic learning.