pub struct ThermalConfig {
pub decay_rates: [Signal; 4],
pub promotion_thresholds: [Signal; 4],
pub demotion_thresholds: [Signal; 4],
pub min_observations: [usize; 4],
pub allow_demotion: [bool; 4],
pub prune_threshold: Signal,
pub crystallization_threshold: Signal,
pub allow_warming: bool,
pub warming_delta: Signal,
}Expand description
Configuration for 4-temperature thermal transitions
All rates and thresholds use Signal (2-byte polarity + magnitude).
Fields§
§decay_rates: [Signal; 4]Decay rates per temperature layer [hot, warm, cool, cold]
promotion_thresholds: [Signal; 4]Promotion thresholds (strength needed to promote) [hot, warm, cool, cold]
demotion_thresholds: [Signal; 4]Demotion thresholds (strength below which demotion occurs) [hot, warm, cool, cold]
min_observations: [usize; 4]Minimum observations before promotion eligible [hot, warm, cool, cold]
allow_demotion: [bool; 4]Whether each layer can be demoted [hot, warm, cool, cold]
prune_threshold: SignalStrength below which entries are pruned entirely
crystallization_threshold: SignalMinimum strength to crystallize (mapped to cool→cold promotion)
allow_warming: boolWhether warming is allowed
warming_delta: SignalWarming cost (strength reduction when warming cold→hot)
Implementations§
Source§impl ThermalConfig
impl ThermalConfig
Sourcepub fn fast_learner() -> Self
pub fn fast_learner() -> Self
Create config optimized for fast learners (agents, workers)
Sourcepub fn decay_rate(&self, state: ThermalState) -> Signal
pub fn decay_rate(&self, state: ThermalState) -> Signal
Get decay rate for a thermal state
Sourcepub fn promotion_threshold(&self, state: ThermalState) -> Signal
pub fn promotion_threshold(&self, state: ThermalState) -> Signal
Get promotion threshold for a thermal state
Sourcepub fn demotion_threshold(&self, state: ThermalState) -> Signal
pub fn demotion_threshold(&self, state: ThermalState) -> Signal
Get demotion threshold for a thermal state
Sourcepub fn min_obs(&self, state: ThermalState) -> usize
pub fn min_obs(&self, state: ThermalState) -> usize
Get min observations for a thermal state
Sourcepub fn can_demote(&self, state: ThermalState) -> bool
pub fn can_demote(&self, state: ThermalState) -> bool
Check if demotion is allowed for a thermal state
Trait Implementations§
Source§impl Clone for ThermalConfig
impl Clone for ThermalConfig
Source§fn clone(&self) -> ThermalConfig
fn clone(&self) -> ThermalConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more