Flocking 3D Market: Social Proof and Congestion in a Multi-Floor Market (1.0.0)
A NetLogo 3D 7.0 model of a market with several floors. Buyers walk, keep their distance from one another, choose among the stalls they can see and change floors. Social proof acts on where buyers go (attraction) and on whether they buy (conversion), and crowding lowers the chance of a purchase. The model tests whether social proof is sufficient to congest such a market and separates the roles of influence, layout and local density. The archive contains the model with every BehaviorSpace experiment of the companion paper, all simulation outputs, the pre-analysis plan, an ODD+D description and the Python code that reproduces every reported number, table and figure.
Release Notes
First public release, accompanying the manuscript “The Crowd That Pulls Also Clears: Social Proof and Congestion in a Three-Dimensional Market”.
Running the model. Open code/Flocking 3D market v5.nlogox3d in NetLogo 3D 7.0 (the 3D application, not standard NetLogo). The interface opens at the working point of the paper: press SETUP, then GO. The Info tab describes every rule and control.
Experiments. All 41 BehaviorSpace experiments of the paper are stored in the model file and run from Tools > BehaviorSpace. code/run_experiments.sh runs them headlessly (set NETLOGO to the NetLogo 7.0 folder). The full campaign is about 9,300 runs of 2,000 ticks, roughly 35 hours with 8 parallel runs.
Analysis. code/analysis_v5.py reads the BehaviorSpace tables in data/ and writes every statistic, table and figure of the paper to results/; code/fig1_flowchart.py draws the model flowchart. Requires Python 3.11+ with numpy, scipy and matplotlib. The bootstrap uses a fixed seed, so the output is identical on every run.
Inputs. Model parameters are set on the interface or by BehaviorSpace; the sensitivity analysis reads its 300-point Latin-hypercube design from the model code (also in data/gsa5_design.json). No external data are needed.
Outputs. BehaviorSpace tables (CSV) with time-averaged steady-state measures (reporters starting with ss-): congestion, its expected value under random placement, buyers at stalls, throughput and stationarity checks.
Documentation. docs/ODD.pdf (ODD+D description and parameter grounding), docs/PRE_ANALYSIS_PLAN.md (pre-analysis plan with dated deviations), docs/README.md (archive guide).
Associated Publications
Flocking 3D Market: Social Proof and Congestion in a Multi-Floor Market 1.0.0
Submitted by
mmjqaq
Published Nov 14, 2026
Last modified Nov 14, 2026
A NetLogo 3D 7.0 model of a market with several floors. Buyers walk, keep their distance from one another, choose among the stalls they can see and change floors. Social proof acts on where buyers go (attraction) and on whether they buy (conversion), and crowding lowers the chance of a purchase. The model tests whether social proof is sufficient to congest such a market and separates the roles of influence, layout and local density. The archive contains the model with every BehaviorSpace experiment of the companion paper, all simulation outputs, the pre-analysis plan, an ODD+D description and the Python code that reproduces every reported number, table and figure.
Release Notes
First public release, accompanying the manuscript “The Crowd That Pulls Also Clears: Social Proof and Congestion in a Three-Dimensional Market”.
Running the model. Open code/Flocking 3D market v5.nlogox3d in NetLogo 3D 7.0 (the 3D application, not standard NetLogo). The interface opens at the working point of the paper: press SETUP, then GO. The Info tab describes every rule and control.
Experiments. All 41 BehaviorSpace experiments of the paper are stored in the model file and run from Tools > BehaviorSpace. code/run_experiments.sh runs them headlessly (set NETLOGO to the NetLogo 7.0 folder). The full campaign is about 9,300 runs of 2,000 ticks, roughly 35 hours with 8 parallel runs.
Analysis. code/analysis_v5.py reads the BehaviorSpace tables in data/ and writes every statistic, table and figure of the paper to results/; code/fig1_flowchart.py draws the model flowchart. Requires Python 3.11+ with numpy, scipy and matplotlib. The bootstrap uses a fixed seed, so the output is identical on every run.
Inputs. Model parameters are set on the interface or by BehaviorSpace; the sensitivity analysis reads its 300-point Latin-hypercube design from the model code (also in data/gsa5_design.json). No external data are needed.
Outputs. BehaviorSpace tables (CSV) with time-averaged steady-state measures (reporters starting with ss-): congestion, its expected value under random placement, buyers at stalls, throughput and stationarity checks.
Documentation. docs/ODD.pdf (ODD+D description and parameter grounding), docs/PRE_ANALYSIS_PLAN.md (pre-analysis plan with dated deviations), docs/README.md (archive guide).