Skip to content

Repository files navigation

BrainlessLab.jl

CI

BrainlessLab

BrainlessLab is a Julia platform for studying simple neural substrates in closed sensorimotor loops. It separates runtime composition, repeated evaluation, research operations, and portable records.

The canonical :falandays node is validated on declared reference trajectories. :sorn is a stable, paper-aligned implementation with a separate software-conformance boundary. Tracking, Pong, and Plank CartPole Easy are the core benchmark tasks. These declarations do not establish general competence or biological fidelity.

Quick start

BrainlessLab is not yet registered in Julia General.

git clone https://github.com/btgaskin/brainless-lab.git
cd brainless-lab
julia --project=. -e 'using Pkg; Pkg.instantiate()'
julia --project=. -e 'using BrainlessLab; sim = simulate(:tracking; node=:falandays, ticks=2_000, seed=26); println(task_outcome(sim))'

The public guide provides four direct paths:

  1. Run your first simulation
  2. Create a reproducible profile
  3. Compare conditions
  4. Extend from another project

Repeated research

NodeSpec + TaskSpec + body + InteractionCycle
  → CompositionSpec

CompositionSpec + EvaluationSpec
  → EvaluationTarget
  → operation plan
  → typed result
  → record

Validate and run one example plan:

julia --project=. bin/brainlesslab.jl check plans/examples/profile_tracking.toml
julia -t auto --project=. bin/brainlesslab.jl run \
  plans/examples/profile_tracking.toml --root records

Every operation record contains the submitted and resolved plans, realised seeds, CSV tables, a machine-readable summary, provenance, checksums, and a readable report. ExperimentSpec groups ordinary operation plans under one versioned scientific question.

Browse the Handbook, the Benchmark, the Research record guide, and the accepted-run catalogue. The catalogue retains accepted contributor records and linked maintainer replays without turning them into additional independent results. It also marks older compatibility records explicitly.

Browse software that remains outside the core learning path in the Experimental catalogue.

Citation and attribution

The canonical :falandays node implements the model published in:

Falandays, J. Benjamin; Yoshimi, Jeffrey; Warren, William H.; Spivey, Michael J. "A potential mechanism for Gibsonian resonance: behavioral entrainment emerges from local homeostasis in an unsupervised reservoir network." Cognitive Neurodynamics 18(4), 1811–1834 (2024). doi:10.1007/s11571-023-09988-2

If you use this software, cite that work as well as BrainlessLab.

BrainlessLab's implementation is an independent reimplementation of the published model. The authors' own Julia source is public at bfalandays/ReservoirModel_followups and is cited, not vendored: no upstream source, data, or figures are redistributed here. Task-specific constants are recorded with per-file provenance in src/api/paper_config.jl, and the reference fixtures are described in test/FIXTURES.md.

Development

Run the fast Core contract tier during ordinary development:

BRAINLESSLAB_TEST_SUITE=core julia --project=. -e 'using Pkg; Pkg.test()'

Bare Pkg.test() runs every suite and takes about fifteen minutes. Select additional runtime, operations, scientific-oracle, legacy, or visual gates from test/README.md. Build the site separately:

cd site
bun install
bun run build

See CONTRIBUTING.md, CITATION.cff, and the MIT licence.

About

An extensible Julia lab for brainless cognition — behaviour from collectives of simple neuron-like nodes. DISI 2026.

Resources

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages