Skip to content

Add pollinator-plant cascade extinction model#352

Open
savirpatil wants to merge 1 commit intomesa:mainfrom
savirpatil:add-pollinator-cascade-model
Open

Add pollinator-plant cascade extinction model#352
savirpatil wants to merge 1 commit intomesa:mainfrom
savirpatil:add-pollinator-cascade-model

Conversation

@savirpatil
Copy link

Summary

Adds a bipartite pollinator-plant cascade extinction model demonstrating emergent cascade failures using the Network discrete space.

Motive

This model was built to demonstrate usage of the Network discrete space with a bipartite graph structure. This model also demonstrates a real-world phenomenon, showing how pollinator loss triggers delayed plant collapse and mirroring colony collapse dynamics that can be seen in real ecosystems.

Implementation

  • Builds a bipartite graph using 'networkx.bipartite.random_graph' wrapped in the 'Network' discrete space
  • Agents inherit from 'CellAgent' and access neighbors via 'cell.connections'
  • Pollinator energy and plant health are continuous attributes that decline based on how many of their network neighbors are still alive, producing cascade behavior from the bottom up
  • Cumulative plant deaths are tracked via a model-level counter since dead agents are removed from 'model.agents'

Usage Examples

Static 3-panel visualization

python run.py

Interactive Solara dashboard

solara run app.py

The dashboard provides sliders for number of pollinators, plants, and network connectivity, allowing exploration of how network density affects the cascading effect.

Additional Notes

  • Includes unit tests (run w/ 'python -m pytest') suite covering initialization, step behavior, forced extinction, and reproducibility

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