Cómo funcionan las herramientas de distancia de ruta

Disponible con una licencia de Spatial Analyst.

Mientras la distancia euclidiana es la línea recta, a medida que el cuervo vuela (distancia entre las ubicaciones), las herramientas de distancia de ruta exploran el movimiento de un viajero sobre un paisaje. Normalmente, las herramientas de distancia de ruta se utilizan para crear la ruta de menor coste entre un origen y un destino, teniendo en cuenta la distancia de la superficie y los factores verticales y horizontales.

Algunos problemas de ejemplo resueltos mediante el análisis de distancia de ruta

  • Determinar el mejor sendero para llegar a una ubicación lejana.
  • Calcular el coste y la distancia reales para una propuesta de carretera ajustando los cambios ascendentes y descendentes del paisaje.
  • Determinar la ruta que debería seguir un barco teniendo en cuenta las corrientes marinas y el viento.

La fórmula general para el análisis de distancia de ruta

Los siguientes elementos influyen en el coste de moverse de una celda a otra:

  1. Las características de la superficie (la superficie de coste).
  2. Las características de lo que se mueve. Podría tratarse del modo de viaje, como ir andando o viajar en un todoterreno.
  3. Las características del movimiento de una celda a otra, como ascendente o descendente.

La fórmula general del coste de distancia es la siguiente:

Cost = Cost of travel  *  Characteristics  *  Movement characteristics       over surface       of the mover        on the surface

Las herramientas de distancia de ruta incorporan las características de la superficie mediante la superficie de coste, que se trata a continuación. Consulte Cómo afectan las características del origen al análisis de coste-distancia para obtener más información sobre cómo controlar las características de lo que se mueve en las herramientas de distancia de ruta. El ráster de superficie y los factores horizontales y verticales dentro de las herramientas de distancia de ruta le permiten definir las características del movimiento de celda a celda.

Cálculo de la distancia de ruta

La herramienta Distancia de ruta es la principal herramienta para el análisis de coste-distancia teniendo en cuenta los factores de coste horizontales y verticales así como la verdadera distancia de superficie. La herramienta Asignación de la distancia de ruta emplea el mismo algoritmo que devuelve como salida principal a un ráster que denota el origen más cercano de cada celda para cada ubicación. La herramienta Vínculo de menor distancia de ruta identifica la direccionalidad del elemento próximo que es la próxima celda en la ruta de menor coste acumulativo hasta el origen más cercano.

Todas las herramientas de distancia de ruta utilizan esencialmente el mismo algoritmo para calcular la salida. La diferencia esencial esta determinada por la salida primaria de cada herramienta.

Las herramientas de distancia de ruta crean un ráster de salida en el que a cada celda se le asigna el coste acumulativo de la celda de origen de menor coste. El algoritmo utiliza la representación de celda de nodo/vínculo. En esta representación, el centro de una celda se considera un nodo y cada nodo se conecta, mediante vínculos, a los nodos adyacentes.

Cada vínculo tiene una impedancia asociada. La impedancia se deriva de los costes asociados con las celdas en cada extremo de vínculo (desde la superficie de coste) y desde la dirección de movimiento.

Para simplificar el debate, las fórmulas de la siguiente sección identifican cómo el coste de viaje se acumula entre celdas a lo largo de la superficie de coste. La modificación del coste para dar cuenta de la distancia de la superficie y los factores horizontales y verticales se abordará en una sección posterior.

Costes del viaje entre nodos

El coste de viajar de un nodo al siguiente depende de la orientación espacial de los nodos. La forma en que están conectadas las celdas también afecta el coste del viaje.

Coste del nodo adyacente

Cuando se mueve desde una celda hasta uno de sus cuatro elementos próximos directamente conectados, el coste para moverse a través de los vínculos hasta el nodo vecino es 1 por la celda 1, más la celda 2, dividido por 2:

a1 = (cost1 + cost2) / 2
  • Donde

    cost1: el coste de viajar hasta la celda 1.

    cost2: el coste de viajar hasta la celda 2.

    a1: el coste asignado al vínculo desde la celda 1 hasta la celda 2.

    Cómputo del coste para celdas adyacentes

Coste perpendicular acumulativo

El coste acumulativo se determina mediante la siguiente fórmula:

accum_cost = a1 + (cost2 + cost3) / 2
  • Donde

    cost2: el coste de viajar hasta la celda 2.

    cost3: el coste de viajar hasta la celda 3.

    accum_cost: el coste acumulado de moverse hasta la celda 3 desde la celda 1.

En la siguiente imagen, a2 es el coste de moverse desde la celda 2 hasta la celda 3.

Cómputo del coste para celdas no adyacentes

Coste del nodo diagonal

Si el movimiento es diagonal, el coste para viajar por el vínculo es 1,414214 (la raíz cuadrada de 2), multiplicado por el coste del viaje hasta la celda 1 más el coste del viaje hasta la celda 2, dividido por 2:

a1 = 1.414214(cost1 + cost2) / 2
Cómputo del coste para celdas diagonales

Cuando se determina el coste acumulativo para el movimiento diagonal, se utiliza la siguiente fórmula:

accum_cost = a1 + 1.414214(cost2 + cost3) / 2

Lista de celdas de coste acumulativo

La creación de un ráster de coste de distancia acumulativo mediante la teoría de grafos se puede visualizar como un intento de identificar la celda de menor coste y agregarla a una lista de salida. Es un proceso iterativo que comienza con las celdas de origen. El objetivo de cada celda es ser asignada rápidamente al ráster de coste de distancia de salida.

Comparación de la distancia de ruta con el coste de distancia

El proceso que se lleva a cabo para la distancia de ruta es similar al proceso del coste de distancia (consulte Cómo funcionan las herramientas de coste de distancia). Primero, se identifican las celdas de origen. Después se determina el coste para viajar hacia cada elemento próximo contiguo a las celdas de origen. A continuación, cada una de las celdas próximas se enumeran desde la menos costosa hasta la más costosa. La ubicación de celda con el menor coste se quita de esta lista activa. Se determina el coste acumulado más bajo hacia cada elemento próximo de la celda que se quitó y esas ubicaciones se agregan a la lista activa. A continuación, se quita de la lista activa la siguiente ubicación de celda con el menor coste.

Procesamiento de la lista de valores de coste acumulado (3)

El proceso se repite hasta que se haya asignado un coste acumulativo a todas las celdas en el ráster. La diferencia entre las herramientas de coste de distancia y distancia de ruta es cómo se calcula el coste del movimiento desde una celda hacia la próxima.

Fórmula de distancia de ruta

Desde la perspectiva de la celda, el objetivo de las herramientas de distancia de ruta es que cada ubicación de celda en la extensión del análisis determine la ruta menos costosa para llegar a la celda desde el origen menos costoso. Cada celda deberá determinar la ruta de menor coste acumulado desde un origen, el origen que permite la ruta de menor coste y la ruta de menor coste propiamente dicha.

Distancia de ruta

El coste para moverse entre las celdas a lo largo de la superficie de coste se determina por medio de las fórmulas que se trataron anteriormente. En la herramienta Distancia de ruta, estos costes (identificados como Cost_Surface en las ecuaciones a continuación) se pueden modificar por medio de la distancia de superficie (Surface_distance) y los factores horizontales y verticales. La fórmula utilizada para calcular el coste total del viaje desde la celda a hasta la celda b depende de si la dirección del viaje es perpendicular o diagonal:

  • Perpendicular
    Cost_distance = (((Cost_surface(a) * HF(a)) + (Cost_surface(b) * HF(b)))/2)                * Surface_distance(ab) * VF(ab)
  • Diagonal
    Cost_distance = (((Cost_surface(a) * HF(a)) + (Cost_surface(b) * HF(b)))/2)                * 1.414214 * Surface_distance(ab) * VF(ab)

  • Donde

    Cost_surface(a): el coste del viaje para la celda a

    Cost_surface(b): el coste del viaje para la celda b

    HF(a): el factor horizontal de la celda a

    HF(b): el factor horizontal de la celda b

    Surface_distance(ab): la distancia de superficie de a a b

    VF(ab): el factor vertical de a a b

Tenga en cuenta que la división por 2 de la fricción de los segmentos se posterga hasta que se integra el factor horizontal.

Si no se especifica una superficie de coste, se utilizará un coste de 1 de distancia por unidad (igual que aplicar un ráster de costes con valores que son todos 1). Tanto los factores horizontales como los verticales se aplican a una distancia por unidad. Los factores horizontales y verticales negativos no están permitidos. Sin embargo, como ambos factores son multiplicadores para el coste acumulado para cada celda, un factor inferior a 1 pero superior a 0 reduce el coste total de esa celda. Un factor vertical de cero, o ceros para ambos segmentos de los factores horizontales, tiene como resultado un coste cero para la celda.

Coste de distancia acumulativo

A continuación se muestra el coste acumulado para viajar desde la celda a hasta la celda c pasando por la celda b:

Accum_cost_distance = a1 + (((Cost_surface(b) * HF(b)) + (Cost_surface(c) * HF(c)))/2)                      * Surface_distance(bc) * VF(bc)
  • Donde

    a1: el coste total para viajar desde la celda a hasta la celda b

    Cost_surface(b): el coste del viaje para la celda b

    Cost_surface(c): el coste del viaje para la celda c

    HF(b): el factor horizontal de la celda b

    HF(c): el factor horizontal de la celda c

    Surface_distance(bc): la distancia de superficie de b a c

    VF(bc): el factor vertical de b a c

Parámetros horizontales y verticales

Hay varios tipos de parámetros que se pueden utilizar para controlar los factores de fricción horizontales y verticales. Para cada uno de estos factores, hay varios modificadores que se pueden utilizar para controlar más aún el análisis.

Para obtener más detalles sobre estos parámetros, consulte la siguiente sección:

Temas relacionados