feat: Agent Lifecycle & Activation Framework with Pluggable Policies #208
aryanbhosale
started this conversation in
Ideas
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Summary
This issue proposes an agent lifecycle and activation framework for OASIS — a pluggable system that governs which agents are active, what capabilities they have, and how they transition between lifecycle states across simulation steps.
The core motivation comes from applying Extended Game of Life (Getz & Salter, 2022) cellular automata rules to social graph topology, but the framework is designed to be general-purpose and beneficial to all OASIS simulations.
Problem
Currently in OASIS, every agent is always active with full capabilities every simulation step. This creates three issues:
Unrealistic behavior. Real social platforms have user lifecycles — new accounts have restricted capabilities (Twitter rate limits new accounts, Reddit requires karma for certain subs), users go through phases (lurker → occasional poster → power user → inactive), and most users are dormant at any given moment.
Cost at scale. Every agent hits the LLM every
step(). At 10K+ agents, this is expensive. There is no way to say "only 20% of agents are active this step" based on principled rules rather than random sampling.Missing research axis. There is no way to study how activation dynamics shape social phenomena. Questions like "how does gradual capability unlocking affect misinformation spread?" or "what happens when agent activity follows local neighborhood rules?" cannot be explored with the current architecture.
Proposal
An agent lifecycle framework with three components:
1. Agent States
Each
SocialAgentgets a lifecycle state that persists across steps:State determines which
ActionTypevalues are available to the agent on any given step.2. Activation Policies (Pluggable)
An
ActivationPolicyinterface that runs onAgentGraphand determines state transitions:Concrete policies could include:
ESTABLISHED(current default behavior, backwards compatible)3. Integration with
OasisEnv.step()Each simulation step becomes:
Why Cellular Automata Specifically
The Extended Game of Life (n-state generalization of Conway's GoL) is particularly interesting for social simulation because:
(state_values, transition_bounds)lets researchers control how easily agents activate, how long they stay active, and what neighborhood conditions trigger transitions.Reference: Getz & Salter (2022), "Extending Conway's Game of Life" — extends GoL to n states with birth/progress/die transition rules controlled by neighborhood value sums.
Benefits to OASIS
AllActivePolicywhich preserves current behaviorProposed Implementation Plan
I am happy to break this into smaller PRs if preferred:
AgentStateenum and state management onSocialAgent— add lifecycle state attribute withActionTypefiltering based on stateActivationPolicyabstract interface — define the pluggable policy contractAllActivePolicy— default implementation preserving current behaviorOasisEnv.step()integration — wire policy transitions into the simulation loopCellularAutomataPolicy— Extended GoL rules onAgentGraphtopologyEach PR would include unit tests and updated documentation following the existing conventions.
Questions for Maintainers
SocialAgentor be managed externally byOasisEnv?available_actionsfiltering should work with the existingperform_action_by_llm()flow?Happy to prototype any of this. Would love feedback on the direction before writing code.
Beta Was this translation helpful? Give feedback.
All reactions