Skip to content

CRAFTY: Agent-Based Land-Use Change Simulation for Regional Policy Analysis

By Jeff 6 views
CRAFTY Functional Type Land-Use Dynamics Over Time
CRAFTY Functional Type Land-Use Dynamics Over Time

Overview

CRAFTY (Coupled Framework for the Assessment of Regional Trade-offs in Agri-environment sYstems) is an open-source, spatially explicit agent-based model (ABM) designed to simulate land-use and land-cover change (LULCC) at regional to continental scales. Developed primarily at the University of Edinburgh and the Helmholtz Centre for Environmental Research (UFZ), CRAFTY models the decision-making of heterogeneous land managers — farmers, foresters, urban developers — as they respond to economic incentives, ecosystem service demands, and social norms. The result is a powerful platform for evaluating how policy interventions, market signals, and climate pressures interact to reshape landscapes over decadal time horizons.

Unlike purely statistical LULCC models, CRAFTY's agent-based architecture captures the adaptive behaviour of individual land managers, making it particularly well-suited for exploring non-linear tipping points, path dependencies, and emergent spatial patterns that aggregate models miss.


Core Architecture

Functional Types and Capital Stocks

CRAFTY organises agents into Functional Types (FTs) — archetypes that share production functions, competitiveness thresholds, and behavioural rules. A typical regional model might define FTs such as:

  • Intensive arable farmer — maximises food production capital, sensitive to commodity prices
  • Extensive livestock farmer — moderate production, higher tolerance for marginal land
  • Agri-environment scheme participant — prioritises biodiversity and carbon sequestration services
  • Abandonment — a passive FT representing unmanaged land

Each cell in the spatial grid is managed by exactly one agent of a given FT. Agents produce ecosystem services (food, timber, carbon storage, water regulation, recreation) proportional to their FT's production function and the local capital stocks — soil quality, slope, accessibility, and social infrastructure — encoded as raster layers.

Demand and Competitiveness

A global (or regional) demand module specifies target levels for each ecosystem service at each time step. CRAFTY computes a competitiveness score for every FT on every cell:

Competitiveness(FT, cell) = Σ [service_weight × production(FT, cell, capital)] − giving_up_threshold

When an agent's competitiveness falls below its giving-up threshold, it abandons the cell. Neighbouring agents then compete to colonise vacant cells based on their giving-in thresholds and spatial search radii. This demand-driven, threshold-based mechanism produces realistic land-use mosaics without requiring explicit optimisation.

Spatial Dynamics and Neighbourhood Effects

CRAFTY supports configurable neighbourhood search — agents scan cells within a defined radius when seeking to expand. Social learning is encoded through imitation rules: agents observe the competitiveness of neighbours and may switch FT if a more successful archetype is visible nearby. This mechanism replicates the diffusion of agricultural practices observed in empirical studies of technology adoption.


Practical Workflow

1. Data Preparation

Capital stocks are supplied as GeoTIFF rasters aligned to a common grid (typically 1 km² cells for national models, 10 km² for continental runs). Required inputs include:

  • Economic capital: market access indices, land prices
  • Natural capital: soil organic carbon, water availability, biodiversity indices
  • Human capital: farm size distribution, labour availability
  • Social capital: cooperative membership, extension service access

The CRAFTY-EU dataset provides pre-processed capital layers for all EU member states at 10 km resolution, enabling rapid model setup for European policy scenarios.

2. Functional Type Parameterisation

FT parameters are defined in CSV files, making it straightforward to encode expert knowledge or calibrate against observed land-use transitions using historical CORINE Land Cover data. Key parameters per FT:

Parameter Description
givingUpThreshold Minimum competitiveness before abandonment
givingInThreshold Minimum competitiveness to colonise a vacant cell
serviceWeights Relative importance of each ecosystem service
productionWeights Sensitivity of production to each capital stock

3. Running Scenarios

CRAFTY is executed from the command line with an XML configuration file specifying the scenario, time horizon, and output frequency:

java -jar crafty.jar -config scenarios/EU_baseline_2050.xml -run 1

Monte Carlo ensembles are straightforward: iterate over parameter perturbations using shell scripts or Python wrappers, storing outputs in separate directories. The CRAFTY-CoBRA extension integrates directly with OpenMole for systematic sensitivity analysis and pattern-space exploration across thousands of parameter combinations.

4. Output Analysis

CRAFTY writes per-time-step raster outputs (land-use maps, service provision maps) and tabular summaries (aggregate service supply vs. demand, FT area statistics). Standard post-processing workflows use R (raster, terra) or Python (rasterio, geopandas) to:

  • Compute service bundles — spatial clusters of co-occurring high-value services
  • Map trade-off frontiers between food production and biodiversity
  • Identify hotspots of abandonment risk under price shock scenarios

Representative Applications

EU Common Agricultural Policy reform analysis: Researchers at UFZ used CRAFTY-EU to simulate the spatial consequences of CAP Pillar I payment reductions across 28 member states, identifying regions where subsidy withdrawal would trigger cascading abandonment and biodiversity loss.

Scottish upland land-use transitions: A University of Edinburgh study modelled competition between sheep farming, commercial forestry, and rewilding FTs under carbon price trajectories from £20 to £200/tCO₂, revealing a non-linear tipping point at ~£80/tCO₂ where forestry rapidly displaces extensive grazing across the Southern Uplands.

Brazilian Cerrado deforestation: CRAFTY has been adapted for tropical contexts, modelling soy and cattle ranching expansion against conservation easements, demonstrating that spatially targeted payments for ecosystem services outperform uniform subsidies by a factor of 2–3 in avoided deforestation per dollar spent.


Integration and Extensibility

CRAFTY is written in Java and distributed under the Apache 2.0 licence. Its modular architecture allows researchers to:

  • Plug in custom demand models — link to computable general equilibrium (CGE) models or price-transmission modules
  • Couple with biophysical simulators — CRAFTY has been coupled with the LPJmL dynamic global vegetation model for climate-consistent productivity projections
  • Extend agent cognition — replace the default threshold-based decision rule with prospect theory, satisficing, or reinforcement learning modules

The active development community maintains documentation, tutorials, and example datasets at crafty-abm.net and the CRAFTY GitHub repository.


Strengths and Limitations

Strengths:

  • Handles continental-scale runs (>500,000 cells) efficiently in Java
  • Transparent, CSV-driven parameterisation lowers the barrier to policy-relevant customisation
  • Strong track record in peer-reviewed LULCC literature (>60 publications)
  • Native support for ensemble runs and sensitivity analysis via CoBRA/OpenMole integration

Limitations:

  • Agent cognition is deliberately simple; complex strategic behaviour requires custom extensions
  • Calibration against observed transitions is non-trivial without automated optimisation tools
  • Spatial resolution is constrained by capital stock data availability (typically ≥1 km²)

CRAFTY Competitiveness Scores Across Capital Stock Gradients

CRAFTY Ecosystem Service Trade-off Frontier

CRAFTY Model Architecture and Data Flow

Further Reading

Tags: agent-based modeling land-use change ecosystem services spatial simulation policy analysis