Repository is archived
No release in over 3 years
Semantic satiation and habituation modeling for brain-modeled agentic AI
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
 Dependencies

Development

 Project Readme

lex-semantic-satiation

Semantic satiation modeling for LegionIO cognitive agents. Tracks fluency decay from repeated exposure and recovery during rest.

What It Does

lex-semantic-satiation models the cognitive phenomenon where repeatedly processing the same concept reduces its perceived fluency and meaningfulness. Each registered concept carries a fluency score (starts at 1.0) that decreases with each exposure and recovers over rest.

  • Exposure: each call to expose decrements fluency by 0.08; exposure count increments each time
  • Recovery: bulk rest cycle increments all fluencies by 0.03 per call
  • Satiation: concepts with fluency < 0.3 are flagged as satiated
  • Novelty: computed from exposure count (100% novel = 0 exposures; 0% novel = 50+ exposures)
  • Pruning: concepts at fluency <= 0.05 can be pruned to make room for new ones

Usage

require 'legion/extensions/semantic_satiation'

client = Legion::Extensions::SemanticSatiation::Client.new

# Register a concept
result = client.register(label: 'recursion', domain: :programming)
id = result[:concept_id]

# Expose it repeatedly
5.times { client.expose(concept_id: id) }
# => { fluency: 0.6, exposure_count: 5, satiated: false }

# Check what is satiated
client.satiation_status
# => { satiated_count: 0, total: 1, satiated: [] }

# Run a rest/recovery cycle
client.recover
# => { success: true, recovered_count: 1 }

# See novelty distribution
client.novelty_report
# => { novel: 1, familiar: 0, common: 0, repeated: 0, overexposed: 0 }

# Domain-level satiation
client.domain_satiation(domain: :programming)
# => { domain: :programming, mean_fluency: 0.65 }

# Remove nearly-faded concepts
client.prune_saturated
# => { success: true, pruned_count: 0 }

Development

bundle install
bundle exec rspec
bundle exec rubocop

License

MIT