This repository contains all the data and scripts required to fully reproduce all analyses presented in the paper "_Generative inference model reveals motivations for road construction in past societies _" authored by Lewis, J and Crema, E.R.
- Open project using Roman_roadways_structure.Rproj to ensure relative paths work.
- Run the 00_Main.R R script in the R folder to reproduce the analysis
- 01_tactical_sim.R generates 62 simulated routes with known parameter values
- 02_ABC_tactical_sim.R fits the Bayesian hierarchical movement model to the 62 simulated routes
- 03_analyse_ABC_tactical_sim.R produces summary tables and figures for the tactical simulation
- 04_ABC_RR_known.R fits the Bayesian hierarchical movement model to the 62 known Roman roads in Wales
- 05_analyse_ABC_RR_known.R produces summary tables and figures for the Roman roads in Wales study
- 06_b_sinuosity_calculation.R calculate sinuosity of simulated Roman roads and relate this to the influence of slope gradient (parameter b). Produce figures for the unified framework
- 07_b_critical_gradient_slope.R produces plot to show relationship between parameter b and critical slope gradient
Data
- DEM
- OS_50m_Wales.tif - Ordnance Survey 50 metres Digital Elevation Model of Wales
- extent
- roman_empire_ad_117.gpkg - Extent of the Roman empire.
- RR_known.gpkg - 62 Known Roman roads digitised from 'Roman frontiers in Wales and the Marches’
Output
- tactical_simuation
- simulated_routes - simulated routes produced via 01_tactical_sim.R
- simulated_routes_abc - fitted least-cost paths to the 62 simulated routes using the Bayesian hierarchical movement model
- simulated_routes_sf - 15,500 least-cost paths based on the estimated posterior b value for each simulated road (250 accepted parameter values * 62 = 15,500); 62 least-cost paths based on the estimated median posterior b value for each simulated road
- simulated_roads - fitted least-cost paths to the 62 known Roman roadways using the Bayesian hierarchical movement model
- tables
- simulated_roads
- road_sims_posterior_summary_1.csv - estimated b parameter for the 62 Roman roads
- road_sims_posterior_summary_2.csv - estimated b bar parameter for the population-level of the 62 Roman roads
- road_sims_posterior_summary_3.csv - Path Deviation Index for the 62 Roman roads
- tactical_simulation
- road_sims_posterior_summary_1.csv - estimated b parameter for the 62 simulated routes (tactical simulation)
- sim_routes_abc_posterior_summary2.csv - estimated b bar parameter for population-level for the 62 simulated routes (tactical simulation)
- b_from_critical_slope - estimated b value for theoretical limits when using wheeled vehicles
- roadway_system
- road_sims_posterior.gpkg - 15,500 least-cost paths based on the estimated posterior b value for each Roman roadway in Wales (250 accepted parameter values * 62 = 15,500)
- road_sims_posterior_median.gpkg - 62 least-cost paths based on the estimated median posterior b value for each Roman roadway in Wales
- figures
Analysis
Please note that running the Bayesian hierarchical movement model via 02_ABC_tactical_sim.R or 04_ABC_RR_known.R has a long processing time and high memory requirements. The calculation of 250,000 least-cost paths for each of the 62 simulated routes / known Roman roadways (15,500,000 least-cost paths in total) takes approximately 4 days to complete when using 85 cores and ~50GB memory.
For testing purposes, the processing time and memory requirements can be reduced by changing the parameters in 00_Main.R
- nsims - total number of simulated per Roman road
- no_post_rows - Total number of accepted parameter to create the posterior distribution
Note that nsims value should be greater than the no_post_rows value
CC-BY 3.0 unless otherwise stated (see Licenses.md)