Movecost QGIS Plugin - Complete Guide

Version 2.1 - R-based tool for calculation of slope-dependent accumulated cost surface, least-cost paths, and least-cost corridors related to human movement across the landscape.

Table of Contents

Requirements & Setup

Important: Before using this plugin, ensure you have installed and configured the Processing R Provider.

System Requirements

First-Time Setup

1 Install R from cran.r-project.org
2 In QGIS, go to Plugins > Manage and Install Plugins and install "Processing R Provider"
3 Go to Settings > Options > Processing > Providers > R and set the R folder path
4 In movecost plugin, click "Add R Scripts" to copy the R scripts to your QGIS profile
5 The plugin will automatically check and install/update the movecost R package when needed

movecost - Accumulated Cost Surface & Least-Cost Paths

Description

Calculates the anisotropic accumulated cost surface from a point origin, considering slope and various cost models. It also computes least-cost paths from the origin to one or more destination points, and optionally generates cost isolines (isochrones).

Use Cases

Tutorial: Calculate Walking Time Between Two Sites

1 Prepare your data:
2 Click the "movecost" button in the plugin dialog
3 Set parameters:
4 Run the algorithm and examine outputs:
Tip: Use the "by Polygon" version if you don't have a DTM - the plugin will download elevation data for your study area automatically.

Outputs

OutputTypeDescription
Output_Accumulation_CoastRasterAccumulated cost surface from origin
Output_IsolineVector (lines)Cost isolines/isochrones
Output_LCPVector (lines)Least-cost path(s) to destination(s)
Output_LCP_BackVector (lines)Return paths to origin (if enabled)
Output_W_CostVector (points)Destinations with cost values

movebound - Walking Cost Boundaries

Description

Calculates walking cost boundary polygons around one or more point locations. Unlike movecost's isolines, movebound creates specific boundary limits corresponding to exact walking cost values (e.g., "show me the area reachable in exactly 1 hour").

Use Cases

Tutorial: Create 1-Hour Walking Catchment Area

1 Prepare your data:
2 Click the "movebound" button
3 Set parameters:
4 Run - The output will show the boundary polygon representing the area reachable within 1 hour of walking

movecorr - Least-Cost Corridors

Description

Calculates the least-cost corridor between two point locations. A corridor shows not just the single optimal path, but a zone of similarly low-cost routes between two points. This is useful for understanding where movement was most likely concentrated.

Use Cases

Tutorial: Find Natural Corridor Between Two Cities

1 Prepare two point layers: Origin and Destination
2 Click "movecorr"
3 Configure:
4 Interpret results:
Tip: A narrow corridor indicates terrain constraints forcing movement through specific areas. Wide corridors suggest multiple viable routes.

movealloc - Cost Allocation Analysis

Description

Performs cost allocation analysis: given multiple origin locations, each cell in the landscape is assigned to its nearest origin based on walking cost (not Euclidean distance). This creates "cost-based Voronoi polygons".

Use Cases

Tutorial: Determine Settlement Territories

1 Create a point layer with all settlement locations
2 Click "movealloc"
3 Set parameters:
4 Output interpretation: Each raster cell value indicates which origin point (by index) it is closest to in terms of walking cost

movecomp - Compare Cost Functions

Description

Calculates least-cost paths using different cost functions and displays them together for comparison. This helps understand how different movement assumptions (pedestrian vs. pack animal vs. wheeled vehicle) affect optimal route selection.

Use Cases

Tutorial: Compare Pedestrian vs. Cart Routes

1 Click "movecomp"
2 Configure:
3 Analyze: Paths that diverge significantly indicate where terrain impacts different transport modes differently

movenetw - Least-Cost Path Networks

Description

Creates a network of least-cost paths connecting multiple locations. Can create either an "all-pairs" network (connecting every point to every other point) or a "nearest neighbor" network (connecting each point only to its nearest neighbors).

Use Cases

Tutorial: Create Trade Network Between Archaeological Sites

1 Create point layer with all site locations
2 Click "movenetw"
3 Configure:
4 Outputs:
Tip: The LCP density raster can reveal "natural highways" - areas where terrain funnels movement regardless of specific origin/destination.

moverank - Rank Destinations by Cost

Description

Calculates the least-cost path from an origin to a destination AND computes sub-optimal alternative paths (the 2nd, 3rd, 4th... best paths). This helps understand not just the optimal route but also viable alternatives.

Use Cases

Tutorial: Find Primary and Alternative Routes

1 Click "moverank"
2 Configure:
3 Interpret: Paths are ranked by cost, with attributes showing the cost of each alternative

Cost Functions Reference

Walking Time Functions

CodeFunction NameDescription
tTobler (on-path)Classic Tobler hiking function for established paths. Most commonly used.
tofpTobler (off-path)Modified for cross-country walking without paths. Slower than on-path.
mpMarquez-Perez et al.Modified Tobler function with different slope penalty.
icmonpIrmischer-Clarke (male, on-path)Empirically derived from GPS tracking of male hikers.
icmoffpIrmischer-Clarke (male, off-path)Male hikers walking off established trails.
icfonpIrmischer-Clarke (female, on-path)Empirically derived from GPS tracking of female hikers.
icfoffpIrmischer-Clarke (female, off-path)Female hikers walking off established trails.
ugUriarte GonzálezFunction developed for Spanish archaeological contexts.
maMarín ArroyoOptimized for mountainous terrain analysis.
albAlbertiModified Tobler for pastoral foraging excursions.
gkrsGarmy-Kaddouri-Rozenblat-SchneiderFrench archaeological research function.
rReesAlternative empirical hiking function.
ksKondo-SeinoJapanese terrain analysis function.
trpTripcevichFunction for high-altitude Andean contexts.

Wheeled Vehicle Function

CodeFunction NameDescription
wcsWheeled-vehicle critical slopeModels slope limitations for carts/wagons. Uses Critical_Slope parameter.

Abstract Cost Functions

CodeFunction NameDescription
reeRelative energetic expenditureDimensionless relative cost based on slope.
bBellaviaAlternative abstract cost model.
eEastmanEastman's cost function.

Metabolic Energy Functions

CodeFunction NameDescription
pPandolf et al.Metabolic cost considering body weight and load. Uses W, L parameters.
pcfPandolf (corrected)Pandolf with correction factor for downhill movement.
mMinetti et al.Energy expenditure from biomechanics research.
hrzHerzogHerzog's metabolic model.
vlVan LeusenArchaeological energy cost model.
lsLlobera-SluckinTheoretical physics-based energy model.
aArdigo et al.Sports science metabolic function.
hHareHare's energy expenditure model.

Parameters Reference

Input Parameters

CRS: Coordinate Reference System for all outputs. Must match your input data.

DTM: Digital Terrain Model raster. Elevation values should be in meters.

Area_of_interest: Polygon layer defining study area. If used instead of DTM, elevation data is downloaded automatically.

Origin: Point layer with starting location(s).

Destination: Point layer with target location(s).

Barrier: Optional line/polygon layer representing impassable or high-cost areas.

Movement Parameters

Move: Cell connectivity - how many directions to consider:

Function: Cost function to use (see tables above).

Time: Output time unit - 'h' for hours, 'm' for minutes.

Physical Parameters

Walker_Body_Weight: Walker's weight in kg (default: 70). Used by Pandolf and Van Leusen functions.

Carried_Load_Weight: Load weight in kg (default: 0). Affects metabolic cost.

Speed: Walking speed in m/s (default: 1.2). Base speed on flat terrain.

N: Terrain factor (default: 1). Higher values = more difficult terrain (mud, sand, etc.).

Critical_Slope: Maximum slope % for wheeled vehicles (default: 10). Typically 8-16%.

Advanced Parameters

Cognitive_Slope: TRUE/FALSE - use perceptual slope instead of actual slope. Humans perceive slopes as steeper than they are.

IrregularDTM: TRUE/FALSE - set TRUE if DTM has irregular edges (coastlines, etc.).

PlotBarrier: TRUE/FALSE - display barrier on output plots.

Field: Conductance value for barrier (0 = impassable, 1 = no effect).

Zoom_Level: Resolution for online elevation data (0-15, default: 9). Higher = more detail but slower.

Troubleshooting

Common Issues

Credits & References

QGIS Plugin: Enzo Cocca (adArte srl) - enzo.ccc@gmail.com

R Package (movecost): Gianmarco Alberti

Repository: github.com/enzococca/movecost

R Package Documentation: CRAN movecost page

Key References