- Simulates landuse change using FUTure Urban-Regional Environment Simulation (FUTURES).
Module uses Patch-Growing Algorithm (PGA) to simulate urban-rural landscape structure development.
, patch growing
r.futures.pga [-s] developed=name subregions=name output=name [output_series=basename] [num_steps=integer] predictors=name[,name,...] devpot_params=name development_pressure=name n_dev_neighbourhood=integer development_pressure_approach=string gamma=float scaling_factor=float demand=name discount_factor=float compactness_mean=float compactness_range=float num_neighbors=integer seed_search=integer patch_sizes=name [incentive_power=float] [constrain_weight=name] [stimulus=name] [random_seed=integer] [--overwrite] [--help] [--verbose] [--quiet] [--ui]
- Generate random seed (result is non-deterministic)
- Automatically generates random seed for random number generator (use when you don't want to provide the seed option)
- Allow output files to overwrite existing files
- Print usage summary
- Verbose module output
- Quiet module output
- Force launching GUI dialog
- developed=name [required]
- Raster map of developed areas (=1), undeveloped (=0) and excluded (no data)
- subregions=name [required]
- Raster map of subregions
- output=name [required]
- State of the development at the end of simulation
- Basename for raster maps of development generated after each step
- Name for output basename raster map(s)
- Number of steps to be simulated
- predictors=name[,name,...] [required]
- Names of predictor variable raster maps
- Listed in the same order as in the development potential table
- devpot_params=name [required]
- Development potential parameters for each region
- Each line should contain region ID followed by parameters (intercepts, development pressure, other predictors). Values are separated by tabs. First line is ignored, so it can be used for header
- development_pressure=name [required]
- Raster map of development pressure
- n_dev_neighbourhood=integer [required]
- Size of square used to recalculate development pressure
- development_pressure_approach=string [required]
- Approaches to derive development pressure
- Options: occurrence, gravity, kernel
- Default: gravity
- gamma=float [required]
- Influence of distance between neighboring cells
- scaling_factor=float [required]
- Scaling factor of development pressure
- demand=name [required]
- Control file with number of cells to convert
- discount_factor=float [required]
- Discount factor of patch size
- compactness_mean=float [required]
- Mean value of patch compactness to control patch shapes
- compactness_range=float [required]
- Range of patch compactness to control patch shapes
- num_neighbors=integer [required]
- The number of neighbors to be used for patch generation (4 or 8)
- Options: 4, 8
- Default: 4
- seed_search=integer [required]
- The way location of a seed is determined (1: uniform distribution 2: development probability)
- Options: 1, 2
- Default: 2
- patch_sizes=name [required]
- File containing list of patch sizes to use
- Exponent to transform probability values p to p^x to simulate infill vs. sprawl
- Values > 1 encourage infill, < 1 urban sprawl
- Options: 0-10
- Default: 1
- Raster map representing development potential constraint weight for scenarios.
- Values must be between 0 and 1, 1 means no constraint.
- Raster map representing an increase in development potential for scenarios.
- Values must be between 0 and 1, 0 means no increase.
- Seed for random number generator
- The same seed can be used to obtain same results or random seed can be generated by other means.
is part of FUTURES
land change model.
This module uses stochastic Patch-Growing Algorithm (PGA)
and a combination of field-based and object-based representations
to simulate land changes.
PGA simulates undeveloped to developed land change by iterative site selection
and a contextually aware region growing mechanism.
Simulations of change at each time step feed development pressure back
to the POTENTIAL submodel, influencing site suitability for the next step.
Patches are constructed in
three steps. First, a potential seed is randomly selected from available cells.
In case seed_search
is 2, the probability value (based on POTENTIAL)
of the seed is tested using Monte Carlo approach, and if it doesn't survive,
new potential seed is selected and tested.
Second, using a 4- or 8-neighbor (see num_neighbors
) search rule PGA grows the patch.
PGA decides on the suitability of contiguous cells based on their
underlying development potential and distance to the seed adjusted
by compactness parameter given in compactness_mean
The size of the patch is determined by randomly selecting a patch size from patch sizes
and multiplied by discount_factor
. To find optimal values
for patch sizes and compactness, use module
Once a cell is converted, it remains developed.
PGA continues to grow patches until the per capita land demand is satisfied.
Development pressure is a dynamic spatial variable
derived from the patch-building process of PGA and associated with the POTENTIAL submodel.
At each time step, PGA updates the POTENTIAL probability surface based on land change,
and the new development pressure then affects future land change.
The initial development pressure is computed using module
The same input parameters of this module
, scaling factor
are then used as input for
Scenarios involving policies that encourage infill versus sprawl
can be explored using the incentive_power
which uses a power function to transform the probability in POTENTIAL.
Figure: Transforming development potential surface using incentive tables with different power functions.
Figure: Effect of incentive table on development probability:
infill (left), status quo (middle), sprawl (right) scenario.
Additionally, parameter constrain_weight (raster map from 0 to 1)
enables to include policies (such as new regulations or fees) which limit the
development in certain areas.
The probability surface is simply multiplied by the constrain_weight values,
which results in decreased site suitability in areas,
where the constrain_weight values are lower than 1.
Similarly, parameter stimulus (raster map from 0 to 1)
enables to include policies to encourage growth in an area.
Using this option results in increased site suitability in areas,
where the stimulus values are greater than 0.
The probability surface is transformed from initial probability p
with stimulus s to p + s - p * s.
After the simulation ends, raster specified in parameter output
If optional parameter output_series
is specified, additional output
is a series of raster maps for each step.
Cells with value 0 represents the initial development, values >= 1 then represent
the step in which the cell was developed. Undeveloped cells have value -1.
Figure: Output map of developed areas
Figure: Detail of output map
r.futures.pga -s developed=lc96 predictors=d2urbkm,d2intkm,d2rdskm,slope \
demand=demand.txt devpot_params=devpotParams.csv discount_factor=0.6 \
compactness_mean=0.4 compactness_range=0.08 num_neighbors=4 seed_search=2 \
patch_sizes=patch_sizes.txt development_pressure=gdp n_dev_neighbourhood=10 \
development_pressure_approach=gravity gamma=2 scaling_factor=1 \
subregions=subregions incentive_power=2 \
constrain_weight=weight_1 output=final_results output_series=development
Module holds all data in the memory, so for large areas the memory requirements
Some inputs are not yet documented.
Meentemeyer, R. K., Tang, W., Dorning, M. A., Vogler, J. B., Cunniffe, N. J., & Shoemaker, D. A. (2013).
FUTURES: Multilevel Simulations of Emerging
Urban-Rural Landscape Structure Using a Stochastic Patch-Growing Algorithm.
Annals of the Association of American Geographers, 103(4), 785-807.
- Dorning, M. A., Koch, J., Shoemaker, D. A., & Meentemeyer, R. K. (2015).
Simulating urbanization scenarios reveals
tradeoffs between conservation planning strategies.
Landscape and Urban Planning, 136, 28-39.
Ross K. Meentemeyer, rkmeente ncsu edu,
Center for Geospatial Analytics, NCSU
Original standalone version:
Ross K. Meentemeyer *
Wenwu Tang *
Monica A. Dorning *
John B. Vogler *
Nik J. Cunniffe *
Douglas A. Shoemaker *
Jennifer A. Koch **
* Department of Geography and Earth Sciences, UNC Charlotte
** Center for Geospatial Analytics, NCSU
Port to GRASS GIS and GRASS-specific additions:
Vaclav Petras, NCSU OSGeoREL
Last changed: $Date: 2016-03-22 02:22:47 +0100 (Tue, 22 Mar 2016) $
Available at: r.futures.pga source code (history)
Main index |
Raster index |
Topics index |
Keywords index |
Graphical index |
GRASS Development Team,
GRASS GIS 7.4.2svn Reference Manual