pub struct AgentGenome {
pub sense_radius: f64,
pub max_idle: u64,
pub keyword_boost: f64,
pub explore_bias: f64,
pub boundary_bias: f64,
pub tentative_weight: f64,
pub reinforcement_boost: f64,
pub wiring_selectivity: f64,
}Expand description
Evolvable parameters for an agent.
Fields§
§sense_radius: f64Sensing radius — how far the agent can detect signals.
max_idle: u64Maximum idle ticks before apoptosis triggers.
keyword_boost: f64Boost factor for known vocabulary terms during digestion.
explore_bias: f64Probability of exploring randomly vs following gradients.
boundary_bias: f64Tendency to move toward substrate boundary vs center.
tentative_weight: f64Initial weight for tentative edges (first co-occurrence). Range: [0.05, 0.5].
reinforcement_boost: f64Weight boost per subsequent co-activation. Range: [0.01, 0.3].
wiring_selectivity: f64Fraction of concept pairs to wire per document. Range: [0.1, 1.0]. 1.0 = wire all pairs, 0.5 = wire ~half (probabilistic), etc.
Implementations§
Source§impl AgentGenome
impl AgentGenome
Sourcepub fn default_genome() -> AgentGenome
pub fn default_genome() -> AgentGenome
Default genome with standard parameters.
Sourcepub fn mutate(&self, mutation_rate: f64, seed: u64) -> AgentGenome
pub fn mutate(&self, mutation_rate: f64, seed: u64) -> AgentGenome
Create a mutated copy of this genome.
Each parameter is perturbed by ±mutation_rate (as a fraction). Uses a simple deterministic PRNG seeded by the given value.
Sourcepub fn distance(&self, other: &AgentGenome) -> f64
pub fn distance(&self, other: &AgentGenome) -> f64
Compute the Euclidean distance between two genomes in parameter space. Parameters are normalized to [0,1] range before computing distance.
Trait Implementations§
Source§impl Clone for AgentGenome
impl Clone for AgentGenome
Source§fn clone(&self) -> AgentGenome
fn clone(&self) -> AgentGenome
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more