Skip to content

Releases: SyntheticBrains/nematode

v0.5.0

Choose a tag to compare

@chrisjz chrisjz released this 23 Aug 08:27
06cd95f

The pre-Phase-7 housekeeping release. It takes the platform that closed Phase 6a, removes the research tooling the platform no longer needs, moves the toolchain to Python 3.13 and Qiskit 2, and prepares the repository for a wider audience.

Breaking changes

  • NematodeBench removed (#274). The curated benchmark submission workflow, validation, category and leaderboard generation, BENCHMARKS.md and docs/nematodebench/ are gone: across Phases 5 and 6 the architecture-comparison protocol read --track-experiment output directly and never used them. The one live component, the convergence detector and composite score, moved to quantumnematode.experiment.convergence; the 72 tracked sessions behind the old submissions were migrated to artifacts/experiments/; the composite_benchmark_score key is unchanged so historical artifacts still load.
  • qqlearning brain retired (#286). QQLearningBrain was the last architecture with no path to the Phase 7 plasticity work. Configs with brain.name: qqlearning no longer load (the loader rejects unregistered brain types); 26 architectures remain, and every count in the docs is now derived from the registry. No tracked artifact carries the retired name.
  • Python 3.13 only, and the gpu extra moves to CUDA 11 (#289). requires-python is >=3.13,<3.14 (it was pinned to 3.12). The CUDA-12 qiskit-aer-gpu build was abandoned upstream after 0.15.1 and has no 3.13 wheel, so the gpu extra now installs qiskit-aer-gpu-cu11 (0.17.2): the bundled CUDA runtime goes from 12 to 11, which needs an NVIDIA driver â‰Ĩ 450 rather than â‰Ĩ 525. Every dependency was refreshed at the same time (torch 2.13, numpy 2.5, pydantic 2.13, scipy 1.18, scikit-learn 1.9, matplotlib 3.11, rich 15, optuna 4.9).
  • Qiskit 2.x (#290). qiskit>=2.0,<3. The platform needed no code changes (it never used the APIs Qiskit 2 removed), but anything of yours built on Qiskit 1.x removals — BackendV1, execute(), bind_parameters(), opflow, qiskit.pulse — must migrate. Test-suite deprecation warnings dropped from ~382,000 to ~200.

Added

  • A README and documentation set designed for the project's public baseline (#292): the README leads with the research question and evidence-linked results; new usage guide, architecture catalogue, visualisation reference and docs index; CITATION.cff.
  • .lfsconfig so a fresh clone fetches only the 4 MB of connectome data the code reads, not the 620 MB of curated logbook artifacts; git lfs pull --include='artifacts/**' fetches those on demand and CI fetches everything (#294).
  • SECURITY.md, issue forms, a pull-request template, Dependabot for the lock file and GitHub Actions, package authorship metadata and a .python-version pin (#296).
  • This changelog.

Changed

  • The Docker image installs the torch extra and copies configs/ and data/, so every brain, scenario and the connectome data are available inside it; it is x86_64-only because the CUDA-11 Aer wheel is (#292).
  • The continuous-2D screenshot export renders a short walk so the worm's body trail is visible; both documentation screenshots regenerated (#292).
  • The remaining PPO and REINFORCE brains share _policy.py (#275); the Phase 5 campaign aggregators share _common.py (#278).
  • CI: the test job runs in about five minutes instead of eighteen, split across five pytest-split shards with one BLAS thread per worker (#288); the workflows use the current Node 24 action majors (#297, #298); the phase6-tracking change passes strict OpenSpec validation (#287).
  • Documentation drift corrected across the roadmap, README, CONTRIBUTING and AGENTS.md, with the brain counts re-derived from the registry (#280); the Claude Code skills carry measured rather than guessed machine numbers (#291).

Fixed

  • spikingreinforce's policy gradient was identically zero, so the brain never learned; it trains now, which changes its results relative to earlier logbooks (#283).
  • The M3/M4 campaign aggregators reported generation-to-target one generation too high; the affected logbooks carry a correction note (#284).
  • A partial F0 baseline override (or a mistyped --campaign-root) now fails closed instead of silently mixing baselines (#285).
  • A flaky optimizer-identity test that compared id()s across object lifetimes, and two warnings the suite emitted on every run (#293).

Removed

  • The dead random-predator sprite; PredatorType rendering is now exhaustive (#281).
  • docs/OPTIMIZATION_METHODS.md, which still used pre-rename class names; its guidance lives in docs/architectures.md (#292).

Security

  • pyarrow 21.0.0 (CVE-2026-25087, reachable only through the qpu extra) is gone from the lock file: qiskit-ibm-catalog 0.16 → 0.19 and qiskit-serverless 0.32 → 0.35 no longer depend on it, and the catalog floor is raised to 0.19 (#295).
  • SECURITY.md documents private vulnerability reporting and what is unsafe to load from untrusted sources (#296).

What's Changed

  • refactor!: remove NematodeBench, preserving the convergence detector and session data by @chrisjz in #274
  • refactor: consolidate the remaining PPO and REINFORCE brains onto _policy.py by @chrisjz in #275
  • refactor: extract shared helpers from the campaign aggregators by @chrisjz in #278
  • docs: correct Phase 6 roadmap status, brain counts and README drift; remove dead code by @chrisjz in #280
  • refactor: remove the dead random-predator sprite and make PredatorType rendering exhaustive by @chrisjz in #281
  • fix: spikingreinforce policy gradient is identically zero by @chrisjz in #283
  • fix: gen-to-target is off by one in the m3/m4 aggregators by @chrisjz in #284
  • fix: fail closed on a partial F0 baseline override by @chrisjz in #285
  • chore: retire the qqlearning brain architecture by @chrisjz in #286
  • Make phase6-tracking pass strict OpenSpec validation by @chrisjz in #287
  • Cut the CI test job from ~18 minutes to roughly five by @chrisjz in #288
  • Move to Python 3.13 and refresh every dependency by @chrisjz in #289
  • Move to Qiskit 2.x by @chrisjz in #290
  • Replace the skills' guessed machine numbers with measured ones by @chrisjz in #291
  • docs: revamp README and related docs for the public-facing baseline by @chrisjz in #292
  • fix(tests): flaky optimizer-identity assertion, plus two spurious warnings by @chrisjz in #293
  • chore(lfs): fetch only data/ by default; CI fetches everything by @chrisjz in #294
  • chore(deps): upgrade qiskit-ibm-catalog/serverless, dropping vulnerable pyarrow by @chrisjz in #295
  • docs: SECURITY.md, issue/PR templates, Dependabot, and post-revamp follow-ups by @chrisjz in #296
  • chore(deps): Bump the actions group with 5 updates by @dependabot[bot] in #298
  • chore(ci): bump action majors to Node 24 versions; drop the develop trigger by @chrisjz in #297
  • chore(release): 0.5.0 — CHANGELOG and version reconciliation by @chrisjz in #299

New Contributors

Full Changelog: v0.4.0...v0.5.0

v0.4.0

Choose a tag to compare

@chrisjz chrisjz released this 10 Jul 12:05
c26fe1d

What's Changed

  • docs(phase6): mid-phase checkpoint amendments to remaining tranches (T5–T9) by @chrisjz in #203
  • T5 (part 1): shared action-policy module + brain migrations by @chrisjz in #205
  • docs: strip planning-doc labels from shared-policy implementation code by @chrisjz in #208
  • T5 (part 2): continuous-2D environment subsystem by @chrisjz in #207
  • feat: continuous tanh-Gaussian action head (MLP-PPO canary) — §4 part 1 by @chrisjz in #209
  • feat: continuous tanh-Gaussian heads on LSTM-PPO + CfC-PPO — §4.2 (recurrent) by @chrisjz in #210
  • feat: connectome continuous-output adapter + strict-mask invariant — §4.3/§4.4 by @chrisjz in #211
  • feat: Transformer (temporal-window) PPO brain — Gate-2 plugin parity (§5) by @chrisjz in #212
  • eval: Gate-2 G2.d floor check — continuous PPO entropy calibration (§6) by @chrisjz in #213
  • docs: close Phase 6 T5 — Gate 2 GO (continuous-2D platform refactor) by @chrisjz in #214
  • fix(openspec): repair 18 main specs left structurally invalid by past archives by @chrisjz in #215
  • chore(openspec): archive add-continuous-2d-and-action-heads (Phase 6 T5) by @chrisjz in #216
  • docs(openspec): post-T5 Phase 6 planning review — Transformer→MUST + T7 prep gaps by @chrisjz in #217
  • openspec: Phase 6 T6 — Rung-2 chemical gradients + adaptive chemosensory sensor (plan) by @chrisjz in #218
  • chore: generalise pre-existing roadmap-ish labels in implementation by @chrisjz in #220
  • Phase 6 T6: Rung-2 chemical gradients + adaptive chemosensory sensor (implementation) by @chrisjz in #219
  • openspec: continuous-substrate fidelity renderer (plan) by @chrisjz in #221
  • feat(render): continuous-2D fidelity renderer (T6.render) by @chrisjz in #222
  • chore(openspec): archive add-continuous-fidelity-renderer by @chrisjz in #223
  • docs(openspec): sequence T7 prep + capture predator-kinematics/reward/config pre-work by @chrisjz in #224
  • chore(openspec): archive add-rung2-chemical-gradients (closes T6) by @chrisjz in #225
  • feat(env): continuous predator kinematics + Euclidean detection (T7-prep) by @chrisjz in #226
  • feat(config): calibrate continuous foraging substrate for T7 (keep high-fidelity Fick) by @chrisjz in #227
  • feat(env): extend static Fick gradient geometry to the predator-sulfolipid field by @chrisjz in #228
  • docs(openspec): close T6 + place ARS/PDE/D-calibration + T7 statistical-power note by @chrisjz in #229
  • feat(configs): lock continuous-arm stability tuning for T7 (T7.prep.continuous_tuning) by @chrisjz in #230
  • docs(openspec): restructure T7-prep bring-up into staged sub-tasks by @chrisjz in #231
  • fix(env): reachable continuous predator damage radius (body/contact-scale fallback) by @chrisjz in #232
  • docs(openspec): reframe T4↔T7 as qualitative cross-regime (two-regimes checkpoint) by @chrisjz in #233
  • feat(env): Euclidean nearest-predator-distance on continuous (reward coherence, T7.prep.reward_coherence) by @chrisjz in #234
  • feat(configs): Stage 1 substrate behaviour canary — calibrated predator + thermal difficulty by @chrisjz in #235
  • docs(openspec): promote C1/C2 to per-architecture convergence + optimisation evaluations by @chrisjz in #236
  • fix(env): bound continuous turn rate to a realistic max angular velocity by @chrisjz in #237
  • feat(render): path-following undulating worm body on the continuous renderer by @chrisjz in #238
  • fix(reward): coherent metric for continuous distance-reward shaping (T7 C1 root cause) by @chrisjz in #239
  • fix(env): revive continuous predator_mechano contact-intensity channel by @chrisjz in #240
  • fix(sensing): sample continuous sensory/reward fields at the float position by @chrisjz in #241
  • feat(configs): finalize the simplified C1 foraging recipe (post reward-fix) by @chrisjz in #242
  • feat(configs): connectome C1 foraging config (Stage 2 step 2a) by @chrisjz in #243
  • feat(configs): connectome continuous bring-up — Stage 2 projection validation (2b) + C2 (2c) by @chrisjz in #244
  • fix(configs): connectome continuous entropy drift-lock (0.02→0.005) + T7 difficulty recalibration by @chrisjz in #245
  • feat(configs): cross-arm C2 foraging+predator convergence, 5 PPO arms (T7 Stage 3) by @chrisjz in #246
  • fix: continuous predator-evasion sensing (saturated field) + thermal-comfort CSV export by @chrisjz in #247
  • feat(configs): corrected cross-arm C2 on real evasion (60mm/count3, T7 rerun) by @chrisjz in #248
  • feat(configs): author T7 integrated continuous-C3 cells (6 MUST arms) by @chrisjz in #249
  • feat(benchmark): level-agnostic plateau convergence detection by @chrisjz in #250
  • feat(configs): converged-budget re-measure + LSTM re-tune (revises gate-3 ranking) by @chrisjz in #251
  • docs(openspec): phase6 tracker cleanup — check off done T7 tasks + corrections by @chrisjz in #252
  • feat(config): warn on unrecognized brain.config keys at load time by @chrisjz in #253
  • docs(logbook): T7 continuous-substrate cross-architecture ranking (029) by @chrisjz in #255
  • docs(research): T7 new-architecture-candidate survey + tracker sequencing by @chrisjz in #256
  • chore(configs): remove dead brain.config keys (#254) by @chrisjz in #257
  • Bit-memory working-memory positive control (T7) — SEPARATION CONFIRMED by @chrisjz in #258
  • minGRU / minLSTM minimal-RNN PPO arms (T7) — both prongs positive by @chrisjz in #259
  • feat(env): source-depletion (ARS) dynamics + T7 short-horizon null verdict (logbook 032) by @chrisjz in #260
  • Chemosensory associative-memory probe (T7) — working-memory separation confirmed by @chrisjz in #261
  • T7 tranche cleanup — close the ranking logbook, defer non-gating arms by @chrisjz in #262
  • docs(roadmap): Phase 6 endgame re-scope — 6a/6b split, defer co-evolution, spin out phase6b-tracking by @chrisjz in #263
  • Connectome degree-preserving rewired-null control (Phase 6a) — degree-statistics, not wiring by @chrisjz in #264
  • Connectome rewired-null control — review nitpick follow-ups (#264) by @chrisjz in #265
  • docs(roadmap): Phase 7 claim-discipline gate + fly-lineage precedent by @chrisjz in #266
  • docs(logbook): 034 efficiency-axis null — degree-statistics holds on learning speed too by @chrisjz in #267
  • feat: real-worm behavioural-chemotaxis validation (T7 Gate 3 G3.d) by @chrisjz in #268
  • feat: real-worm behavioural-thermotaxis validation (T7, second modality — honest PARTIAL) by @chrisjz in #269
  • docs: Phase 6a synthesis — architecture comparison on the connectome substrate (Gate 3 GO) by @chrisjz in #270
  • docs: refresh README + CONTRIBUTING to current capabilities by @chrisjz in #271
  • feat(render): animated, oriented pursuit predator (continuous-2D) by @chrisjz in #272
  • docs: high-fidelity demo GIF as the README hero by @chrisjz in https://github.com/SyntheticBrai...
Read more

v0.3.1

Choose a tag to compare

@chrisjz chrisjz released this 04 Jun 11:15
d619e21

What's Changed

  • docs(roadmap): v4 reframe — optimal-primary, connectome-as-control by @chrisjz in #179
  • chore(openspec): scaffold phase6-tracking change by @chrisjz in #180
  • feat(connectome-substrate): import Cook 2019 + Witvliet 2021 C. elegans connectome (Phase 6 T1 L0) by @chrisjz in #181
  • feat(brain-architecture): plugin registry for brain architectures (Phase 6 T2 L1, partial) by @chrisjz in #182
  • Connectome-constrained PPO brain + Phase 6 Gate 1 close by @chrisjz in #183
  • Corrected biology-driven predator sensing (two-channel ASH/PVD/PLM + sulfolipid) by @chrisjz in #184
  • docs(openspec): scaffold add-neat-weights-brain + weight-search-architecture-ranking changes by @chrisjz in #185
  • feat(brain): FeedforwardGABrain — matched-capacity GA-evolved feed-forward brain by @chrisjz in #186
  • chore(openspec): sync + archive add-neat-weights-brain change by @chrisjz in #187
  • feat(phase0-predator-sensing): lock canonical predator-evasion sensor + reward (+14pp over legacy) by @chrisjz in #188
  • feat(connectome): Phase 1b — predator-sensor projection (ASH/ASI/ALM/AVM/PLM) by @chrisjz in #189
  • feat(connectome): Phase 1c — thermotaxis→AFD projection + connectome predator/thermo configs by @chrisjz in #190
  • feat(configs): Phase 1d combined C3 cells + 1e connectome canonicalisation by @chrisjz in #191
  • docs(planning): Phase 2 pre-flight + Phase 3 decisions + Phase 1f tracker sync (closes Phase 1) by @chrisjz in #192
  • perf(connectome): vectorise the PPO update forward pass (8.1× speedup) by @chrisjz in #193
  • feat(evolution): graded EpisodicProgressFitness for sparse-reward GA cells by @chrisjz in #194
  • fix(lstmppo): orthogonal recurrent init + optional LayerNorm cell for recurrent stability by @chrisjz in #195
  • feat(brain): add CfC / liquid brain (CfCPPOBrain) by @chrisjz in #196
  • fix(cfc): entropy annealing for stabilization by @chrisjz in #197
  • feat(brain): add SpikingPPOBrain (recurrent adaptive-LIF + PPO) by @chrisjz in #198
  • feat(spiking): configurable MLP actor head for SpikingPPOBrain by @chrisjz in #199
  • feat(quantum): add bilateral-Z₂-equivariant quantum brain (EquivariantQuantumPPOBrain) by @chrisjz in #200
  • feat(weight-search): Phase 4 cross-architecture C3 ranking + quantum attribution (Logbook 025) by @chrisjz in #201
  • docs: refresh README + CONTRIBUTING for current project state by @chrisjz in #202

Full Changelog: v0.3.0...v0.3.1

v0.3.0

Choose a tag to compare

@chrisjz chrisjz released this 23 May 02:32
f8a1a0a

What's Changed

  • feat: add brain-agnostic evolution framework (M0) by @chrisjz in #132
  • perf(evolution): cut per-step dead work + add CMA-ES diagonal mode opt-in by @chrisjz in #133
  • feat: hyperparameter evolution + MLPPPO pilot (M2) by @chrisjz in #134
  • fix(evolution): three M2 framework bugs + LSTMPPO+klinotaxis pilot (M2 close-out) by @chrisjz in #135
  • feat(evolution): M2.11 LSTMPPO+klinotaxis+predator arm — non-saturated M2 landscape by @chrisjz in #136
  • feat(evolution): M2.12 — Optuna/TPE optimiser; close RQ1 + M2 by @chrisjz in #137
  • docs: M3: Lamarckian inheritance pilot (LSTMPPO+klinotaxis+predator, TPE) — GO by @chrisjz in #138
  • feat(m4): Baldwin Effect framework + INCONCLUSIVE pilot + audit by @chrisjz in #139
  • chore(openspec): archive add-baldwin-evolution + sync deltas by @chrisjz in #140
  • feat(baldwin-retry): M4.5 audit closures + structural finding (logbook 015 step 1; M4.6 follow-up planned) by @chrisjz in #141
  • docs(baldwin): close M4.6 with STOP verdict — substrate constraint identified by @chrisjz in #142
  • docs(phase5): replan post-M4 — re-sequence M1→M5→M6, soften M5 gate, Baldwin secondary instrumentation by @chrisjz in #143
  • feat(env): M1 PredatorBrain Protocol + heuristic adapter + per-predator metrics by @chrisjz in #144
  • feat(env): M5 PR 1 — MLPPPOPredatorBrain + dispatcher (tasks 1.1–2.4) by @chrisjz in #145
  • feat(evolution): M5 PR 2 — predator factory + encoder + fitness (tasks 3.0–3.6) by @chrisjz in #146
  • docs(roadmap): add Future Directions entry 6 — Ecological Co-Evolution by @chrisjz in #147
  • feat(evolution): M5 PR 3 — HoF + Red Queen metrics + CoevolutionLoop (tasks §4-§6) by @chrisjz in #148
  • feat(coevolution): PR 4 — configs + driver + opposition injection + pool dispatch by @chrisjz in #149
  • feat(coevolution): PR 5 — aggregate_m5_pilot.py + verdict gate + plots by @chrisjz in #150
  • feat(coevolution): PR 5a — wall-time instrumentation + pretrain-arm smoke (pre-pilot polish) by @chrisjz in #151
  • feat(coevolution): wire generality probe body (PR 5b — Option B cross-species held-out) by @chrisjz in #152
  • feat(coevolution): M5 pilot substrate revisions + screening trajectory by @chrisjz in #153
  • docs(coevolution): close M5 with logbook 017 + STOP verdict + archive by @chrisjz in #154
  • docs: rename OpenSpec change directories + condense experiment index by @chrisjz in #155
  • docs(phase5): revise M6/M6.5/M7 plan per May 2026 literature scan by @chrisjz in #156
  • docs(phase5): renumber M6.5 → M7 and M7 → M8; clean M6 sub-tasks by @chrisjz in #157
  • docs(openspec): scaffold add-transgenerational-memory (M6 planning) by @chrisjz in #158
  • feat(evolution): scaffold TransgenerationalInheritance strategy (M6 commit 1) by @chrisjz in #159
  • feat(agent): add TransgenerationalMemory dataclass (M6 commit 2) by @chrisjz in #160
  • feat(brain): LSTMPPO tei_prior attribute + PPO consistency (M6 commit 3) by @chrisjz in #161
  • feat(evolution): F0 substrate extraction pipeline (M6 commit 4) by @chrisjz in #162
  • feat(evolution): per-gen lawn_schedule + 12-tuple worker dispatch (M6 commit 5) by @chrisjz in #163
  • feat(configs): transgenerational pilot configs + campaign shell (M6 commit 6) by @chrisjz in #164
  • feat(evolution): F0 probe fix + per-gen evaluator + pilot aggregator (M6 commit 7) by @chrisjz in #165
  • feat(transgenerational): close M6 with framework + INCONCLUSIVE logbook 018 (commit 8) by @chrisjz in #166
  • docs(transgenerational): M6.9+ PR-A: TEI re-evaluation — framework + M3 validation shipped, STOP on pure-TEI by @chrisjz in #167
  • docs(transgenerational): M6.13: TEI-as-prior-on-M3 framework + three-arm aggregator (execution deferred) by @chrisjz in #168
  • docs(transgenerational): M6.13 campaign close-out — STOP verdict + GC fix + logbook 020 + archive by @chrisjz in #169
  • docs(transgenerational): M8 Phase 5 synthesis — close Phase 5 COMPLETE by @chrisjz in #170
  • chore(cleanup): strip planning-doc refs from production code + tests by @chrisjz in #171
  • chore(cleanup): strip tmp/ path refs from active operational files by @chrisjz in #172
  • chore(cleanup): strip tmp/ path refs from archived docs + snapshot artefacts by @chrisjz in #173
  • chore(cleanup): trim verbose TEI-bias comments in lstmppo.py by @chrisjz in #174
  • docs(roadmap): condense Phase 5 section to match earlier phases' style by @chrisjz in #175
  • chore(tests): mark heavy evolution-loop tests as slow to speed up pre-commit by @chrisjz in #176
  • chore: Remove workplan by @chrisjz in #177
  • chore(openspec): archive phase5-tracking after Phase 5 close by @chrisjz in #178

Full Changelog: v0.2.2...v0.3.0

v0.2.2

Choose a tag to compare

@chrisjz chrisjz released this 22 May 10:11
648b9c4

What's Changed

  • feat: Add project-specific Claude Code skills by @chrisjz in #89
  • chore: Reorganize configs into scenario-based directory structure by @chrisjz in #90
  • chore: Move study configs to logbook artifact directories by @chrisjz in #91
  • feat!: Remove placeholder sensory modules (AEROTAXIS, VISION, ACTION) by @chrisjz in #93
  • feat!: Remove deprecated brain type aliases by @chrisjz in #97
  • feat!: Remove legacy use_lstm flag from MLPPPOBrain by @chrisjz in #92
  • feat!: Remove DynamicEnvironmentConfig backward-compat alias by @chrisjz in #94
  • feat!: Remove legacy benchmark directory by @chrisjz in #95
  • feat!: Remove get_qiskit_backend backward-compat re-export by @chrisjz in #96
  • feat!: Remove deprecated APPETITIVE and AVERSIVE sensory module aliases by @chrisjz in #98
  • feat!: Remove unified gradients and CHEMOTAXIS module by @chrisjz in #99
  • feat!: Remove random predator movement type and legacy predator configs by @chrisjz in #100
  • feat!: Enable boundary collision and temperature proximity penalty defaults by @chrisjz in #101
  • fix: Fix nightly test failures from legacy removal changes by @chrisjz in #103
  • fix!: Remove instant death — health system always on by @chrisjz in #102
  • feat!: Remove legacy 2-feature preprocessing mode by @chrisjz in #104
  • feat!: Remove reservoir-hybrid legacy fallback, BrainParams combined gradients, MLPPPOBrain.input_dim by @chrisjz in #105
  • feat: Add aerotaxis (oxygen sensing) system by @chrisjz in #106
  • docs: Add Logbook 010 - Aerotaxis evaluation baselines by @chrisjz in #107
  • feat: Add multi-agent infrastructure (Phase 4 Deliverable 1) by @chrisjz in #108
  • docs: Update Logbook 010 Aerotaxis derivative and temporal evaluation by @chrisjz in #109
  • docs: Complete Logbook 010 - Aerotaxis temporal evaluation by @chrisjz in #110
  • feat: Add pheromone communication system by @chrisjz in #111
  • fix: multi-agent sensing - use agent's own position in BrainParams by @chrisjz in #113
  • feat: Add social dynamics - social feeding, aggregation pheromones, collective metrics by @chrisjz in #114
  • feat: Multi-agent evaluation campaign: metrics, bug fixes, 7 campaigns by @chrisjz in #117
  • fix: Fix multi-agent exploration bonus and effects-phase reward signals by @chrisjz in #121
  • refactor: STAM to dynamic channel management by @chrisjz in #122
  • feat: Add multi-agent Pygame visualization by @chrisjz in #123
  • Add food spatial persistence and satiety-gated consumption by @chrisjz in #124
  • Add food hotspot evaluation configs and update logbook 011 by @chrisjz in #126
  • Add klinotaxis (head-sweep) sensing mode by @chrisjz in #127
  • docs: Klinotaxis Era multi-agent pheromone evaluation (Logbook 011) by @chrisjz in #128
  • chore: Broaden artifact CSV LFS tracking to artifacts/**/*.csv by @chrisjz in #130
  • docs: add Phase 5 tracking scaffold (M-1) by @chrisjz in #131

Full Changelog: v0.2.1...v0.2.2

v0.2.1

Choose a tag to compare

@chrisjz chrisjz released this 22 May 10:11
005d1d3

What's Changed

  • feat: Add unified weight persistence system by @chrisjz in #86
  • feat: Add temporal sensing, STAM, and LSTM/GRU PPO brain by @chrisjz in #87
  • docs: Add logbook 009 - Temporal Sensing Evaluation by @chrisjz in #88

Full Changelog: v0.2.0...v0.2.1

v0.2.0

Choose a tag to compare

@chrisjz chrisjz released this 22 May 10:11
2cb546b

What's Changed

  • Write simulation_results.csv incrementally per episode by @chrisjz in #69
  • feat: Add QLIF-LSTM brain by @chrisjz in #70
  • docs: Add QLIF-LSTM brain evaluation by @chrisjz in #72
  • feat: Add QRH-QLSTM and CRH-QLSTM brain architectures by @chrisjz in #73
  • docs: Add QRH-QLSTM evaluations by @chrisjz in #74
  • docs: Add new quantum architecture candidates by @chrisjz in #75
  • feat: Add QEF brain by @chrisjz in #78
  • docs: Add QEF brain evaluation by @chrisjz in #79
  • Add QA-7 quantum plasticity evaluation and close quantum architecture campaign by @chrisjz in #80
  • Fix torch.device() handling for GPU/QPU DeviceType values by @chrisjz in #81
  • Refactor: Extract hook methods from ReservoirHybridBase by @chrisjz in #82
  • Refactor: Consolidate duplicated RolloutBuffer implementations by @chrisjz in #83
  • Add UUID suffix to session IDs to prevent parallel collisions by @chrisjz in #84
  • Roadmap v3.0: Reorient around dual goals + environment enrichment by @chrisjz in #85

Full Changelog: v0.1.6...v0.2.0

v0.1.6

Choose a tag to compare

@chrisjz chrisjz released this 22 May 10:11

What's Changed

  • docs: Add roadmap by @chrisjz in #20
  • feat: Add SOTA RL baseline by @chrisjz in #22
  • feat: Add chemotaxis validation system by @chrisjz in #24
  • feat: Add seeding support by @chrisjz in #26
  • feat: Add NematodeBench benchmarking system by @chrisjz in #27
  • [NematodeBench] Classical PPO on Foraging Small - 0.835 by @chrisjz in #28
  • feat: Restructure storing benchmark artifacts by @chrisjz in #29
  • [NematodeBench] Classical PPO on Predator Small - 0.728 by @chrisjz in #30
  • [NematodeBench] Quantum Modular on Foraging Small - 0.835 by @chrisjz in #31
  • [NematodeBench] Quantum Modular on Predator Small - 0.611 by @chrisjz in #32
  • [NematodeBench] Classical REINFORCE MLP on Foraging Small - 0.810 by @chrisjz in #33
  • [NematodeBench] Classical REINFORCE MLP on Predator Small - 0.624 by @chrisjz in #34
  • docs: Add initial Phase 1 change specifications by @chrisjz in #35
  • chore: Add markdown linter and formatter by @chrisjz in #36
  • feat: Add health system by @chrisjz in #38
  • feat: Add new predator types by @chrisjz in #39
  • feat: Add mechanosensation support by @chrisjz in #40
  • feat: Add unified feature extraction by @chrisjz in #41
  • feature: Add thermotaxis system by @chrisjz in #42
  • feat: Support temperature hotspots by @chrisjz in #43
  • perf: Optimise thermotaxis simulations by @chrisjz in #44

Full Changelog: v0.1.5...v0.1.6

v0.1.5

Choose a tag to compare

@chrisjz chrisjz released this 22 May 10:11

What's Changed

  • feat: Add benchmark modular foraging small by @chrisjz in #17
  • perf: Improve spiking performance by @chrisjz in #19

Full Changelog: v0.1.4...v0.1.5

v0.1.4

Choose a tag to compare

@chrisjz chrisjz released this 22 May 10:11

What's Changed

  • feat: Add predator evasion behaviour (#2) by @chrisjz in #10
  • perf: Improve quantum modular performance by @chrisjz in #13
  • perf: Improve quantum modular performance in predator environments by @chrisjz in #15

Full Changelog: v0.1.3...v0.1.4