lc_developmental_events (faber_neuroevolution v1.2.4)
View SourceBehavioral event constructors for Developmental Silo.
Events related to ontogeny, critical periods, and plasticity. Developmental Silo operates at timescale τ=40.
Summary
Types
-type developmental_event() :: #critical_period_opened{meta :: #lc_event_meta{event_id :: binary(), correlation_id :: binary() | undefined, causation_id :: binary() | undefined, timestamp :: timestamp(), version :: pos_integer(), emitter :: atom()}, individual_id :: individual_id(), period_type :: sensory | motor | cognitive | social, plasticity_boost :: float(), expected_duration_generations :: non_neg_integer()} | #critical_period_closed{meta :: #lc_event_meta{event_id :: binary(), correlation_id :: binary() | undefined, causation_id :: binary() | undefined, timestamp :: timestamp(), version :: pos_integer(), emitter :: atom()}, individual_id :: individual_id(), period_type :: sensory | motor | cognitive | social, actual_duration_generations :: non_neg_integer(), learning_achieved :: float()} | #plasticity_changed{meta :: #lc_event_meta{event_id :: binary(), correlation_id :: binary() | undefined, causation_id :: binary() | undefined, timestamp :: timestamp(), version :: pos_integer(), emitter :: atom()}, individual_id :: individual_id(), plasticity_before :: float(), plasticity_after :: float(), change_cause :: age | experience | stress | development} | #developmental_stage_reached{meta :: #lc_event_meta{event_id :: binary(), correlation_id :: binary() | undefined, causation_id :: binary() | undefined, timestamp :: timestamp(), version :: pos_integer(), emitter :: atom()}, individual_id :: individual_id(), stage_before :: atom(), stage_after :: atom(), age_generations :: non_neg_integer(), fitness_at_transition :: float()} | #metamorphosis_triggered{meta :: #lc_event_meta{event_id :: binary(), correlation_id :: binary() | undefined, causation_id :: binary() | undefined, timestamp :: timestamp(), version :: pos_integer(), emitter :: atom()}, individual_id :: individual_id(), stage_before :: atom(), stage_after :: atom(), structural_changes :: #{neurons_added => non_neg_integer(), connections_rewired => non_neg_integer()}, fitness_before :: float()} | #canalization_increased{meta :: #lc_event_meta{event_id :: binary(), correlation_id :: binary() | undefined, causation_id :: binary() | undefined, timestamp :: timestamp(), version :: pos_integer(), emitter :: atom()}, individual_id :: individual_id(), canalization_before :: float(), canalization_after :: float(), perturbation_resistance :: float()} | #heterochrony_detected{meta :: #lc_event_meta{event_id :: binary(), correlation_id :: binary() | undefined, causation_id :: binary() | undefined, timestamp :: timestamp(), version :: pos_integer(), emitter :: atom()}, individual_id :: individual_id(), timing_deviation :: float(), affected_traits :: [atom()], fitness_impact :: float()} | #developmental_milestone{meta :: #lc_event_meta{event_id :: binary(), correlation_id :: binary() | undefined, causation_id :: binary() | undefined, timestamp :: timestamp(), version :: pos_integer(), emitter :: atom()}, individual_id :: individual_id(), milestone_type :: first_signal | first_action | first_success | maturity, age_generations :: non_neg_integer(), performance_level :: float()}.
-type individual_id() :: binary().
-type timestamp() :: integer().
Functions
-spec canalization_increased(map()) -> #canalization_increased{meta :: #lc_event_meta{event_id :: binary(), correlation_id :: binary() | undefined, causation_id :: binary() | undefined, timestamp :: timestamp(), version :: pos_integer(), emitter :: atom()}, individual_id :: individual_id(), canalization_before :: float(), canalization_after :: float(), perturbation_resistance :: float()}.
-spec critical_period_closed(map()) -> #critical_period_closed{meta :: #lc_event_meta{event_id :: binary(), correlation_id :: binary() | undefined, causation_id :: binary() | undefined, timestamp :: timestamp(), version :: pos_integer(), emitter :: atom()}, individual_id :: individual_id(), period_type :: sensory | motor | cognitive | social, actual_duration_generations :: non_neg_integer(), learning_achieved :: float()}.
-spec critical_period_opened(map()) -> #critical_period_opened{meta :: #lc_event_meta{event_id :: binary(), correlation_id :: binary() | undefined, causation_id :: binary() | undefined, timestamp :: timestamp(), version :: pos_integer(), emitter :: atom()}, individual_id :: individual_id(), period_type :: sensory | motor | cognitive | social, plasticity_boost :: float(), expected_duration_generations :: non_neg_integer()}.
-spec developmental_milestone(map()) -> #developmental_milestone{meta :: #lc_event_meta{event_id :: binary(), correlation_id :: binary() | undefined, causation_id :: binary() | undefined, timestamp :: timestamp(), version :: pos_integer(), emitter :: atom()}, individual_id :: individual_id(), milestone_type :: first_signal | first_action | first_success | maturity, age_generations :: non_neg_integer(), performance_level :: float()}.
-spec developmental_stage_reached(map()) -> #developmental_stage_reached{meta :: #lc_event_meta{event_id :: binary(), correlation_id :: binary() | undefined, causation_id :: binary() | undefined, timestamp :: timestamp(), version :: pos_integer(), emitter :: atom()}, individual_id :: individual_id(), stage_before :: atom(), stage_after :: atom(), age_generations :: non_neg_integer(), fitness_at_transition :: float()}.
-spec event_to_map(developmental_event()) -> map().
-spec heterochrony_detected(map()) -> #heterochrony_detected{meta :: #lc_event_meta{event_id :: binary(), correlation_id :: binary() | undefined, causation_id :: binary() | undefined, timestamp :: timestamp(), version :: pos_integer(), emitter :: atom()}, individual_id :: individual_id(), timing_deviation :: float(), affected_traits :: [atom()], fitness_impact :: float()}.
-spec metamorphosis_triggered(map()) -> #metamorphosis_triggered{meta :: #lc_event_meta{event_id :: binary(), correlation_id :: binary() | undefined, causation_id :: binary() | undefined, timestamp :: timestamp(), version :: pos_integer(), emitter :: atom()}, individual_id :: individual_id(), stage_before :: atom(), stage_after :: atom(), structural_changes :: #{neurons_added => non_neg_integer(), connections_rewired => non_neg_integer()}, fitness_before :: float()}.
-spec plasticity_changed(map()) -> #plasticity_changed{meta :: #lc_event_meta{event_id :: binary(), correlation_id :: binary() | undefined, causation_id :: binary() | undefined, timestamp :: timestamp(), version :: pos_integer(), emitter :: atom()}, individual_id :: individual_id(), plasticity_before :: float(), plasticity_after :: float(), change_cause :: age | experience | stress | development}.