Expand description
Space implementations for agent-based models.
Each space defines a topology in which agents exist and provides:
- Position types
- Agent registration / deregistration
- Neighbor queries
- Random position generation
| Space | Position type | Metric | Use case |
|---|---|---|---|
NothingSpace | - | - | Non-spatial models |
Grid2D | (usize, usize) | Chebyshev | Cellular automata, Schelling |
Grid2DSingle | (usize, usize) | Chebyshev | Single-occupancy grids |
ContinuousSpace2D | ContinuousPos | Euclidean | 2D flocking, particles |
ContinuousSpace3D | ContinuousPos3D | Euclidean | 3D physics |
GraphSpace | usize (node index) | Hops (BFS) | Networks, social graphs |
HybridSpace | HybridPos | Hops + Euclidean | Buildings, multi-room environments |
LinkSpace | (NodeId, NodeId) | Link distance | Generic link-based networks |
Modulesยง
- continuous
- 2D continuous space with spatial-hashing neighbor queries.
- continuous3d
- 3D continuous space with spatial-hashing neighbor queries.
- density
- Spatial density grid and Level-of-Service (LoS) analysis for transportation.
- graph
- Graph-based discrete space.
- grid
- 2D grid spaces with integer coordinates.
- hybrid
- Hybrid space combining a
GraphSpacetopology withContinuousSpace3Dsurfaces at each graph node. - link
- Generic link-based network space.
- nothing
- No-op space for non-spatial models.
- prelude
- Re-exports of all space types and their associated position/error types.