Using FUTURES in GRASS for Modelling Urban Growth

From CUOSGwiki
Revision as of 09:17, 19 December 2021 by Mabel Chua (talk | contribs) (part 2 modelling section added)
Jump to navigationJump to search

Using FUTURES in GRASS for Modelling Urban Growth

Introduction

Purpose

The aim of this tutorial is to demonstrate the use of FUTURES (Future Urban-Regional Environment Simulation) for urban spatial growth analysis. While most urban growth models are focused on cell-level conversions and object-based representation, FUTURES uses patch-based, stochastic, multi-level land change modelling framework to provide urban-rural land development models. FUTURES is an open source urban growth model that is designed to address regional-scale ecological and environmental impacts of urbanization and captures the spatial structure of development. This is done through regional projections of landscape patterns and then FUTURES creates submodels that integrate nonstationary drivers of land change. In this tutorial, the submodel that will be used is site suitability (POTENTIAL submodel). The POTENTIAL submodel uses a set of coefficients that relate a selection of site suitability factors to the probability of a place becoming developed. The model does this through multilevel logistic regression through a hierarchy of characteristics based on land use systems and the divergent relationships between predictor and response variables to obtain the coefficients.

Part 1: Getting Started

In order to complete this tutorial, basic GRASS functionality is required (insert intro tutorial). GRASS GIS provides standard GIS tools and graphical user interface for model uses and for FUTURE modelling, GRASS GIS simplifies the distribution of FUTURES by providing efficient libraries for GRASS GIS. FUTURES in GRASS GIS has multiple advantages for model users including its multiplatform, its scriptability (Bash, Python, R), graphical user interface and can be used for further analysis as well as visualization. Software requirements to run FUTURES in grass can involve many types of software depending on the model that is required. For this tutorial, the software needed is GRASS GIS 7, the submodel addon (r.futures.potential) and R Software. Launching the Graphical User Interface (GUI) in the mapset. The GUI can be found in the top menu bar labelled layer manager and it allows for the display as well as manipulating the raster and vector data.

Data

Using FUTURES to compute distance between Ottawa’s new transit system and Ottawa’s Business Improvement Areas (BIA) using the R command line. People want to be able to access the BIA and FUTURES can help to see if the new transit system is an accessible pathway to the BIA. FUTURES can be used to find locations where there are gaps between these two systems in order to place connections within Ottawa. Places where they lack connection, using FUTURES to find locations with development potential. Create grassdata directory and move the location Easily install package: g.extension r.futures G.extension r.sample.category R packages can be installed using the command line terminal which was started with GRASS GIS and R. : R Future Transit and LRT stations in Ottawa: Future Transit Station | Future Transit Station | Open Ottawa Ottawa’s Business Improvement Areas: https://open.ottawa.ca/datasets/ottawa::business-improvement-areas/about Initial steps: change to raster data. Converting the vector data of Ottawa’s BIA and Future Trasnsit Systems through v.to.rast input=protected_areas output=protected_areas use=val r.null map=protected_areas null=0

Part 2: Modelling

The Potential Submodel requires raster maps that are predictors that drive land change. This can include slope, road density, forests, and/or distance to protected areas etc. For this tutorial we will use distance to roads in km and development pressures.

r.grow.distance input=roads distance=roads_dist

r.mapcalc "roads_dist_km = roads_dist/1000." This generates a raster map containing distances to nearest raster features and/or the value of the nearest non-null cell. r.grow.distance input=transit_station distance=dist_to_transit_system This can be modelled using r.futures.potential To compute POTENTIAL regression coefficients r.futures.potential input=sampling output=potential.csv columns=devpressure_0_5_92,road_dens_perc,forest_1992_smooth_perc,dist_to_water_km,dist_to_protected_km developed_column=urban_change_clip subregions_column=counties --o