Skip to content

feat: add Agents.jl extension (CA as shared environment) - #33

Open
MartinuzziFrancesco wants to merge 1 commit into
masterfrom
fm/ext-agents
Open

feat: add Agents.jl extension (CA as shared environment)#33
MartinuzziFrancesco wants to merge 1 commit into
masterfrom
fm/ext-agents

Conversation

@MartinuzziFrancesco

@MartinuzziFrancesco MartinuzziFrancesco commented Jul 30, 2026

Copy link
Copy Markdown
Owner

Adds cellular_automaton_abm, which builds an Agents.jl StandardABM that advances a CellularAutomata rule once per model step (stored under the model's cellular_automaton property) alongside independently-scheduled mobile agents. Matches the "CA as environment, not cell-as-agent" design already agreed on: Agents.jl's per-agent scheduling would otherwise break the Synchronous/Stochastic update semantics our API assumes, so the automaton is driven as a single model_step! instead of one agent per cell.

Verified end-to-end against real Agents.jl v7.0.3 (StandardABM, GridSpaceSingle, both 1D and 2D) in a disposable scratch environment before wiring into the package, including that the ABM's grid state matches an independently-computed rollout.

Adds cellular_automaton_abm, which builds an Agents.jl StandardABM
that advances a CellularAutomata rule once per model step (stored
under the model's `cellular_automaton` property) alongside
independently-scheduled mobile agents. Matches the "CA as environment,
not cell-as-agent" design already agreed on: Agents.jl's per-agent
scheduling would otherwise break the Synchronous/Stochastic update
semantics our API assumes, so the automaton is driven as a single
model_step! instead of one agent per cell.

Verified end-to-end against real Agents.jl v7.0.3 (StandardABM,
GridSpaceSingle, both 1D and 2D) in a disposable scratch environment
before wiring into the package, including that the ABM's grid state
matches an independently-computed `rollout`.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HLo6tnomTm1Z3c2hoe8PmH
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant