Learn R Programming

gdistance (version 1.1-9)

rSPDistance: Randomized shortest path distance

Description

Calculates the randomized shortest path distance between points.

Usage

rSPDistance (x, from, to, theta, totalNet = "net", method=1)

Arguments

x
TransitionLayer object)
from
point locations coordinates (of SpatialPoints, matrix or numeric class)
to
point locations coordinates (of SpatialPoints, matrix or numeric class)
theta
theta is the degree from which the path randomly deviates from the shortest path, 0 < theta < 20
totalNet
total or net movements between cells
method
method 1 (as defined in Saerens et al.) or method 2 (a modified version, see below in Details)

Value

distance matrix (S3 class dist or matrix)

Details

The function implements the algorithm given by Saerens et al. (2009). Method 1 implements the method as it is. Method 2 uses W = exp(-theta * ln(P)).

References

Saerens M., L. Yen, F. Fouss, and Y. Achbany. 2009. Randomized shortest-path problems: two related models. Neural Computation, 21(8):2363-2404.

See Also

geoCorrection

Examples

Run this code
#Create a new raster and set all its values to unity.
r <- raster(nrows=18, ncols=36) 
r <- setValues(r,rep(1,ncell(raster)))

#Create a Transition object from the raster
tr <- transition(r,mean,4)

#Create two sets of coordinates
sP1 <- SpatialPoints(cbind(c(65,5,-65),c(55,35,-35)))
sP2 <- SpatialPoints(cbind(c(50,15,-40),c(80,20,-5)))

#Calculate the RSP distance between the points
rSPDistance(tr, sP1, sP2, 1)

Run the code above in your browser using DataLab