From d679fb6558f26d431b74a457df4c0ae4d8ddbc94 Mon Sep 17 00:00:00 2001 From: Ewout ter Hoeven Date: Sat, 28 Dec 2024 21:16:44 +0100 Subject: [PATCH] paper: Process feedback on spaces Co-Authored-By: Jan Kwakkel --- paper/paper.md | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/paper/paper.md b/paper/paper.md index bfa715baa2d..75828a5176a 100644 --- a/paper/paper.md +++ b/paper/paper.md @@ -70,9 +70,7 @@ for species, agents in grouped: ``` ### Spaces -Mesa 3 provides multiple spatial environments where agents interact, offering both discrete (cell-based) and continuous space implementations: - -In discrete spaces, an agent occupies a cell. Mesa implements discrete spaces using a doubly-linked structure where each cell maintains connections to its neighbors. The framework includes several discrete space variants with a consistent API: +Mesa 3 provides both discrete (cell-based) and continuous space implementations. In discrete spaces, an agent occupies a cell. Mesa implements discrete spaces using a doubly-linked structure where each cell maintains connections to its neighbors. The framework includes several discrete space variants with a consistent API: - Grid-based: `OrthogonalMooreGrid`, `OrthogonalVonNeumanGrid`, and `HexGrid` - Network-based: `Network` for graph-based topologies @@ -87,11 +85,11 @@ grid = OrthogonalVonNeumannGrid( Mesa provides specialized agent classes for spatial interactions in the discrete spaces: -- `FixedAgent`: Remains at its assigned cell -- `CellAgent`: Can move between cells and access its current location +- `FixedAgent`: Is assigned to a cell, can access this cell, but cannot move to another cell. +- `CellAgent`: Can move between cells - `Grid2DMovingAgent`: Extends `CellAgent` with directional movement methods -All discrete spaces support PropertyLayers - efficient numpy-based arrays for storing environmental data: +All discrete spaces support PropertyLayers - efficient numpy-based arrays for storing cell-level properties: ```python grid.create_property_layer("elevation", default_value=10) high_ground = grid.elevation.select_cells(lambda x: x > 50)