ArcGIS Desktop

  • ArcGIS Pro
  • ArcMap

  • My Profile
  • Ayuda
  • Sign Out
ArcGIS Desktop

ArcGIS Online

La plataforma de representación cartográfica para tu organización

ArcGIS Desktop

Un completo SIG profesional

ArcGIS Enterprise

SIG en tu empresa

ArcGIS for Developers

Herramientas para crear aplicaciones basadas en la ubicación

ArcGIS Solutions

Plantillas de aplicaciones y mapas gratuitas para tu sector

ArcGIS Marketplace

Obtén aplicaciones y datos para tu organización.

  • Documentación
  • Soporte
Esri
  • Iniciar sesión
user
  • Mi perfil
  • Cerrar sesión

ArcMap

  • Inicio
  • Introducción
  • Cartografiar
  • Analizar
  • Administrar datos
  • Herramientas
  • Extensiones

Salida de SolveVehicleRoutingProblem

  • out_stops
  • out_routes
  • out_directions
  • out_unassigned_stops
  • solve_succeeded

Cuando se ejecuta correctamente, el servicio devuelve la solución al problema de generación de rutas para vehículos especificado. La solución está compuesta por los siguientes parámetros de salida:

out_stops

Utilice este parámetro para acceder a información acerca de las paradas realizadas en los depósitos, órdenes y descansos. La información indica cuales rutas hacen las paradas, las horas de llegada y salida y la secuencia de paradas.

A continuación se proporciona una descripción de los atributos que se devuelven para cada parada:

Nombre del campoDescripción

ID de objeto

Identificador único para la parada. El servicio genera automáticamente este identificador.

Nombre

El nombre de la parada. El valor de este atributo es el mismo que el atributo Name de los parámetros depots, orders o breaks de la solicitud. Puede utilizar el atributo StopType para determinar si el valor del atributo Name hace referencia a un depósito, una orden o un descanso.

PickupQuantities

La cantidad de carga o el número de personas a recoger en una parada. Si se entregan varias dimensiones en una parada, cada cantidad se separa por un espacio.

Las unidades del valor de este atributo no se almacenan. Debe interpretar las unidades según la forma en que especificó el atributo Quantities del parámetro routes en la solicitud y los atributos PickupQuantities y DeliveryQuantities de los parámetros orders en la solicitud.

DeliveryQuantities

La cantidad de carga o el número de personas a dejar en una parada. Si se entregan varias dimensiones en una parada, cada cantidad se separa por un espacio.

Las unidades del valor de este atributo no se almacenan. Debe interpretar las unidades según la forma en que especificó el atributo Quantities del parámetro routes en la solicitud y los atributos PickupQuantities y DeliveryQuantities de los parámetros orders en la solicitud.

StopType

Indica si la parada representa un depósito, orden o descanso. El valor de atributo es un entero que puede interpretarse de la siguiente manera:

  • 0: la parada es una orden.
  • 1: la parada es un depósito.
  • 2: la parada es un descanso.

RouteName

El nombre de la ruta que hace la parada.

Secuencia

La secuencia relativa en la que la ruta asignada visita la parada.

FromPreviousTravelTime

El tiempo de viaje transcurrido desde la parada anterior de la ruta a la parada actual. El valor está en las unidades que se especifican en el parámetro time_units.

FromPreviousDistance

La distancia a lo largo de la ruta desde la parada anterior hasta la parada actual. El valor está en las unidades que se especifican en el parámetro distance_units.

ArriveCurbApproach

Indica de qué lado del vehículo está el bordillo al llegar a la parada. Un valor de 1 significa el lado derecho del vehículo; 2 indica el lado izquierdo.

DepartCurbApproach

Indica de qué lado del vehículo está el bordillo al salir de la parada. Un valor de 1 significa el lado derecho del vehículo; 2 indica el lado izquierdo.

ArriveTime

La hora del día cuando la ruta llega a la parada. El valor de hora del día de este atributo se encuentra en la zona horaria donde está ubicada la parada.

DepartTime

La hora del día cuando la ruta sale de la parada. El valor de hora del día de este atributo se encuentra en la zona horaria donde está ubicada la parada.

ArriveTimeUTC

La hora del día cuando la ruta llega a la parada. Este valor se proporciona en la Hora universal coordinada (UTC).

DepartTimeUTC

La hora del día cuando la ruta sale de la parada. Este valor se proporciona en la Hora universal coordinada (UTC).

WaitTime

El tiempo de espera o relevo en la parada. Por ejemplo, un tiempo de espera se incurre cuando una ruta debe esperar en una orden para que se abra una ventana de tiempo. El valor está en las unidades que se especifican en el parámetro time_units.

ViolationTime

La cantidad de tiempo transcurrido desde el final de la ventana de tiempo de la parada hasta la llegada del vehículo de ruta. El valor está en las unidades que se especifican en el parámetro time_units.

out_routes

Utilice este parámetro para acceder a los conductores, vehículos y vías de las rutas de un problema de generación de rutas para vehículos. Los parámetros populate_route_lines y route_line_simplification_tolerance ejercen una gran influencia en la forma de las rutas de salida. Las geometrías de ruta se devuelven en la referencia espacial especificada como el parámetro env:outSR.

A continuación se proporciona una descripción de los campos que se devuelven para cada ruta:

Nombre del campoDescripción

ID de objeto

Identificador único para la ruta. El servicio genera automáticamente este identificador.

Nombre

El nombre de la ruta.

PickupQuantities

La cantidad de carga o el número de personas a recoger en una parada. Si se entregan varias dimensiones en una parada, cada cantidad se separa por un espacio.

Las unidades del valor de este atributo no se almacenan. Debe interpretar las unidades según la forma en que especificó el atributo Quantities del parámetro routes en la solicitud y los atributos PickupQuantities y DeliveryQuantities de los parámetros orders en la solicitud.

ViolationConstraints

Contiene un resumen de las restricciones que se han infringido al asignar el orden a alguna de las rutas. El servicio asigna un entero único para cada restricción que se ha infringido. El valor del atributo ViolatedConstraints es un entero que representa la suma de todas las restricciones que la ruta ha infringido. Para determinar las restricciones individuales que se han infringido, puede tratar el valor de atributo como una máscara de bits y derivar los valores para los bits individuales. Por ejemplo, la combinación de Capacidad excedida (2) y Zona de ruta difícil (128) se codifica como 130 (2 +128).

Si una ruta provoca la infracción de una restricción, se puede asignar al atributo ViolatedConstraints una combinación de una o más infracciones mostradas a continuación.

  • MaxOrderCount exceeded (1): las órdenes preasignadas no se pueden asignar a la ruta dado que la asignación de órdenes superaría el número máximo de órdenes que se pueden asignar a la ruta tal como se especifica en el atributo MaxOrderCount del parámetro routes.
  • Capacities exceeded (2): las órdenes preasignadas no se pueden asignar a la ruta ya que la asignación de las órdenes superaría la capacidad total de la ruta tal como se especifica en el atributo Capacities del parámetro routes.
  • MaxTotalTime exceeded (4): el tiempo de viaje desde el depósito inicial al depósito final más los tiempos de espera y servicio en ambos depósitos y cualquier corte que supere el tiempo total de la ruta tal como se especifica en el atributo MaxTotalTime del parámetro routes.
  • MaxTotalTravelTime exceeded (8): el tiempo de viaje desde el depósito inicial al depósito final supera el tiempo de viaje total de la ruta tal como se especifica en el atributo MaxTotalTravelTime del parámetro routes.
  • MaxTotalDistance exceeded (16): la distancia de viaje desde el depósito inicial al depósito final supera la distancia de viaje total de la ruta tal y como se especifica en el atributo MaxTotalDistance del parámetro routes.
  • Hard time window (32): existe una infracción de ventana de tiempo estricta en el depósito inicial, depósito final o corte asociado a la ruta.
  • Unmatched speciality (64): las especialidades requeridas por una orden no se encuentran en la ruta de destino.
  • Hard route zone (128): una orden que se preasignó a la ruta no cae dentro de una zona de ruta difícil.
  • Order pair MaxTransitTime exceeded (256): existen un par de órdenes preasignadas a la ruta y al asignar las órdenes al par de órdenes se superaría el tiempo de tránsito máximo para el par de órdenes tal como se especifica en el atributo MaxTransitTime del parámetro order_pairs.
  • Order pair violation (512): una orden pertenece a un par de órdenes y no se puede asignar a la ruta preasignada.
  • Unreachable (1024): hay una orden preasignada ubicada en una calle a la que no se puede llegar por la ruta.
  • Cannot insert required break (2048): un corte para la ruta tiene un valor de secuencia null en presencia de órdenes preasignadas y el corte no se puede insertar en cualquier parte sin introducir otras infracciones.
  • MaxTravelTimeBetweenBreaks exceeded (8192): el solucionador no ha podido insertar un corte en el tiempo especificado por el atributo MaxTravelTimeBetweenBreaks para el parámetro breaks. Esto suele producirse al preasignar una secuencia a un descanso tal que no se puede alcanzar en el tiempo de viaje máximo.
  • Break MaxCumulWorkTime exceeded (16384): el servicio no ha podido insertar un corte en el tiempo especificado por el atributo MaxCumulWorkTime para el atributo breaks. Esto suele producirse al preasignar una secuencia a un descanso tal que no se puede alcanzar en el tiempo de trabajo máximo.

OrderCount

El número de órdenes asignadas a la ruta.

TotalCost

El coste operativo total de la ruta, que es la suma de los siguientes valores de atributo: FixedCost, RegularTimeCost, OvertimeCost, DistanceCost.

RegularTimeCost

El coste de horas de trabajo normales, excluido cualquier descanso no pagado.

OvertimeCost

El coste de trabajo en horas extra, excluidos los descansos no pagados.

DistanceCost

El componente de coste de distancia obtenido multiplicando los valores de atributo TotalDistance y CostPerUnitDistance.

TotalTime

La duración total de la ruta. Esto incluye los tiempos de viaje, así como los tiempos de servicio y de espera en órdenes, depósitos y descansos. El valor está en las unidades que se especifican en el parámetro time_units. El valor TotalTime es la suma de los siguientes valores de atributo:

  • StartDepotServiceTime
  • EndDepotServiceTime
  • TotalOrderServiceTime
  • TotalBreakServiceTime
  • TotalRenewalServiceTime
  • TotalWaitTime
  • TotalTravelTime

TotalOrderServiceTime

El tiempo de servicio total empleado en todas las órdenes en la ruta. El valor está en las unidades que se especifican en el parámetro time_units.

TotalBreakServiceTime

El tiempo de servicio total empleado en todos los descansos en la ruta. El valor está en las unidades que se especifican en el parámetro time_units.

TotalTravelTime

El tiempo de viaje total para la ruta. El valor está en las unidades que se especifican en el parámetro time_units.

TotalDistance

La distancia de viaje total para la ruta. El valor está en las unidades que se especifican en el parámetro distance_units.

StartTime

La hora de inicio de la ruta. La ruta puede empezar antes del comienzo de su ventana de tiempo de depósito inicial, en cuyo caso hay un tiempo de espera en el depósito inicial. El valor de hora del día de este atributo se encuentra en la zona horaria donde está ubicado el depósito inicial.

EndTime

El tiempo de finalización de la ruta. La ruta finaliza al completar el servicio en el depósito final. El valor de hora del día de este atributo se encuentra en la zona horaria donde está ubicado el depósito final.

TotalWaitTime

El tiempo de espera total en todas las órdenes, depósitos y descansos en la ruta. El valor está en las unidades que se especifican en el parámetro time_units.

TotalViolationTIme

El tiempo de infracción total en todas las órdenes y descansos en la ruta. El valor está en las unidades que se especifican en el parámetro time_units.

RenewalCount

Para una ruta con reanudaciones, esto es igual al número de visitas a los depósitos para la renovación de un vehículo, es decir, cargar o descargar un vehículo.

TotalRenewalServiceTime

Para una ruta con reanudaciones, el tiempo de servicio total empleado en todas las visitas de renovación en la ruta. El valor está en las unidades que se especifican en el parámetro time_units.

Shape_Length

La longitud de la ruta en las unidades de la referencia espacial especificada para las rutas. De forma predeterminada, la longitud se indica en grados decimales si no se especifica el parámetro env:outSR.

StartTimeUTC

La hora de inicio de la ruta en la hora universal coordinada (UTC).

EndTimeUTC

La hora de finalización de la ruta en Tiempo universal coordinado (UTC).

out_directions

Utilice este parámetro para acceder a indicaciones con el detalle de cada giro para que los conductores sigan sus rutas asignadas. El parámetro incluye indicaciones de conducción, así como la geometría para la entidad de indicaciones correspondiente al texto. La forma de la entidad de indicaciones está determinada desde las calles subyacentes incluidas en la ruta. Las geometrías de entidad se devuelven en la referencia espacial especificada como el parámetro env:outSR. Las entidades están vacías si el parámetro populate_directions es false. Los parámetros directions_language y directions_style_name ejercen una gran influencia en las indicaciones de conducción.

A continuación se proporciona una descripción de los campos que se devuelven para las entidades de indicaciones:

Nombre del campoDescripción

ID de objeto

Un identificador único para la entidad de indicaciones. El servicio genera automáticamente este identificador.

Nombre

El nombre de la ruta a la que se aplica la acción de conducción. Este valor es el mismo que el atributo Name del parámetro out_routes.

ArriveTime

La hora del día para iniciar determinada acción de conducción. El valor se indica en milisegundos desde la medianoche del 1 de enero de 1970.

Tipo

Indica el tipo de maniobra que la entidad de indicación representa o el tipo de texto de las indicaciones. A fin de determinar si Type hace referencia a un tipo de maniobra o a un tipo de cadena de caracteres de las indicaciones, compruebe el valor del campo SubItemType.

Por ejemplo, Type se puede utilizar para asignar un icono diferente para un texto de indicación en función del tipo de maniobra, o usar un estilo de formato especial dependiendo del tipo de cadena de caracteres de las indicaciones cuando se visualizan las indicaciones de conducción en sus aplicaciones

El valor Type es un valor entero de las tablas Tipos de maniobra o Tipos de cadena de caracteres de las indicaciones.

Tipos de maniobra

ValorDescripción

0

Desconocido

1

Llegar a la parada

2

Siga recto

3

Girar a izquierda

4

Girar a derecha

5

Gire a la i

6

Gire a la derecha

7

Gire a la izquierda

8

Gire a la derecha

9

Realice un giro en U

10

Tomar ferri

11

Tomar rotonda

12

Incorporarse a autopista

13

Salir de autopista

14

Seguir en otra autopista

15

En cruce, manténgase en el centro

16

En cruce, manténgase a la izquierda

17

En cruce, manténgase a la derecha

18

Salida desde parada

19

Elemento de planificación de viaje

20

Fin de ferri

21

Rampa a la derecha

22

Rampa a la izquierda

23

Gire a la izquierda y gire inmediatamente a la derecha

24

Gire a la derecha y gire inmediatamente a la izquierda

25

Gire a la derecha y gire inmediatamente a la derecha

26

Gire a la izquierda y gire inmediatamente a la izquierda

Tipos de cadena de caracteres de las indicaciones

ValorDescripción

0

Tipo de cadena de caracteres de indicaciones generales

1

Tipo de cadena de caracteres de indicaciones de salida

2

Tipo de cadena de caracteres de indicaciones de llegada

3

Tipo de cadena de caracteres de indicaciones de longitud

4

Tipo de cadena de caracteres de indicaciones de tiempo

5

Tipo de cadena de caracteres de indicaciones de resumen de tiempo

6

Tipo de cadena de caracteres de indicaciones de ventana de tiempo

7

Tipo de cadena de caracteres de indicaciones de tiempo de infracción

8

Tipo de cadena de caracteres de indicaciones de tiempo de espera

9

Tipo de cadena de caracteres de indicaciones de tiempo de servicio

10

Tipo de cadena de caracteres de indicaciones de tiempo estimado de llegada

11

Tipo de cadena de caracteres de indicaciones de longitud acumulada

12

Tipo de cadena de caracteres de indicaciones de nombres de calle

13

Tipo de cadena de caracteres de indicaciones de nombre de calle alternativo

14

Tipo de cadena de caracteres de indicaciones de información de señal de bifurcación

15

Tipo de cadena de caracteres de indicaciones de información de señal de avance

16

Tipo de cadena de caracteres de indicaciones de nombre de calle transversal

17

Tipo de cadena de caracteres de indicaciones de señal de número de salida

SubItemType

Especifica si el campo Type hace referencia a un entero de la tabla Tipos de cadena de caracteres de las indicaciones o la tabla Tipos de maniobra.

  • Si el valor de SubItemType es 1, Type hace referencia a los valores de la tabla Tipos de maniobra.
  • Si el valor de SubItemType es 2, Type hace referencia a los valores de la tabla Tipos de cadena de caracteres de las indicaciones.

Texto

Una descripción de texto de la indicación de conducción.

ElaspsedTime

El tiempo transcurrido desde el momento en que comienza la actual indicación de conducción hasta que empieza la próxima, o hasta que finaliza la ruta de la última indicación de conducción. El valor está en las unidades que se especifican en el parámetro time_units.

DriveDistance

La distancia desde donde se produce la actual indicación de conducción a donde ocurre la siguiente, o donde finaliza la ruta para la última indicación de conducción. El valor está en las unidades que se especifican en el parámetro distance_units.

Este valor es cero para las indicaciones de conducción que ocurren en la misma ubicación en la que comienza la próxima. Por ejemplo, DriveDistance es 0 para las indicaciones al inicio de la ruta.

Shape_Length

La longitud de la entidad de indicaciones en las unidades de referencia espacial especificada para las rutas. De forma predeterminada, la longitud se indica en grados decimales si no se especifica el parámetro env:outSR.

out_unassigned_stops

Utilice este parámetro para acceder a las órdenes que no se pudieron visitar por ninguna ruta. Asimismo, puede determinar la razón por la que la parada no pudo ser visitada y realizar los cambios necesarios para solucionar el problema.

A continuación se proporciona una descripción de los atributos que se devuelven para cada parada no asignada:

Nombre del campoDescripción

ID de objeto

Identificador único para la parada. El servicio genera automáticamente este identificador.

StopType

Indica si la parada representa un depósito, orden o descanso. El valor de atributo es un entero que puede interpretarse de la siguiente manera:

  • 0: la parada es una orden.
  • 1: la parada es un depósito.
  • 2: la parada es un descanso.

Nombre

El nombre de la parada. El valor de este atributo es el mismo que el atributo Name de los parámetros depots, orders o breaks de la solicitud. Puede utilizar el atributo StopType para determinar si el valor del atributo Name hace referencia a un depósito, una orden o un descanso.

ViolationConstraints

Contiene un resumen de las restricciones que se han infringido al asignar el orden a alguna de las rutas. El servicio asigna un entero único para cada restricción que se ha infringido. El valor del atributo ViolatedConstraints es un entero que representa la suma de todas las restricciones que la ruta ha infringido. Para determinar las restricciones individuales que se han infringido, puede tratar el valor de atributo como una máscara de bits y derivar los valores para los bits individuales. Por ejemplo, la combinación de Capacidad excedida (2) y Zona de ruta difícil (128) se codifica como 130 (2 +128).

Si una orden provoca la infracción de una restricción, se puede asignar al atributo ViolatedConstraints una combinación de una o más infracciones mostradas a continuación.

  • MaxOrderCount exceeded (1): las órdenes preasignadas no se pueden asignar a la ruta dado que la asignación de órdenes superaría el número máximo de órdenes que se pueden asignar a la ruta tal como se especifica en el atributo MaxOrderCount del parámetro routes.
  • Capacities exceeded (2): las órdenes preasignadas no se pueden asignar a la ruta ya que la asignación de las órdenes superaría la capacidad total de la ruta tal como se especifica en el atributo Capacities del parámetro routes.
  • MaxTotalTime exceeded (4): el tiempo de viaje desde el depósito inicial al depósito final más los tiempos de espera y servicio en ambos depósitos y cualquier corte que supere el tiempo total de la ruta tal como se especifica en el atributo MaxTotalTime del parámetro routes.
  • MaxTotalTravelTime exceeded (8): el tiempo de viaje desde el depósito inicial al depósito final supera el tiempo de viaje total de la ruta tal como se especifica en el atributo MaxTotalTravelTime del parámetro routes.
  • MaxTotalDistance exceeded (16): la distancia de viaje desde el depósito inicial al depósito final supera la distancia de viaje total de la ruta tal y como se especifica en el atributo MaxTotalDistance del parámetro routes.
  • Hard time window (32): existe una infracción de ventana de tiempo estricta en el depósito inicial, depósito final o corte asociado a la ruta.
  • Unmatched speciality (64): las especialidades requeridas por una orden no se encuentran en la ruta de destino.
  • Hard route zone (128): una orden que se preasignó a la ruta no cae dentro de una zona de ruta difícil.
  • Order pair MaxTransitTime exceeded (256): existen un par de órdenes preasignadas a la ruta y al asignar las órdenes al par de órdenes se superaría el tiempo de tránsito máximo para el par de órdenes tal como se especifica en el atributo MaxTransitTime del parámetro order_pairs.
  • Order pair violation (512): una orden pertenece a un par de órdenes y no se puede asignar a la ruta preasignada.
  • Unreachable (1024): hay una orden preasignada ubicada en una calle a la que no se puede llegar por la ruta.
  • Cannot insert required break (2048): un corte para la ruta tiene un valor de secuencia null en presencia de órdenes preasignadas y el corte no se puede insertar en cualquier parte sin introducir otras infracciones.
  • MaxTravelTimeBetweenBreaks exceeded (8192): el solucionador no ha podido insertar un corte en el tiempo especificado por el atributo MaxTravelTimeBetweenBreaks para el parámetro breaks. Esto suele producirse al preasignar una secuencia a un descanso tal que no se puede alcanzar en el tiempo de viaje máximo.
  • Break MaxCumulWorkTime exceeded (16384): el servicio no ha podido insertar un corte en el tiempo especificado por el atributo MaxCumulWorkTime para el atributo breaks. Esto suele producirse al preasignar una secuencia a un descanso tal que no se puede alcanzar en el tiempo de trabajo máximo.
Explore:

El valor ViolatedConstraints de una orden sin enrutar podría describir o no todas sus infracciones. Si la infracción es lo bastante grave para excluir inmediatamente la orden de otras consideraciones, el servicio lo hace, lo que evita descubrir otras infracciones para dicha orden. Si se encuentra una infracción que no impide automáticamente la generación de una solución, dicha infracción se anota en ViolatedConstraints y el solucionador sigue considerando la orden. Cualquier infracción adicional, como las añadidas al campo ViolatedConstraints hasta que (a) el servicio encuentra una infracción que detiene prematuramente el proceso de resolución para esa orden particular o bien (b) el servicio encuentra una solución global al problema.

Estado

Indica el estado de la parada en la solución devuelta por el servicio. El valor de atributo es un entero que puede interpretarse de la siguiente manera.

  • 0: la parada se evaluó satisfactoriamente.
  • 3: la calle donde está la parada no es transitable. Esto puede ocurrir cuando la calle está restringida por una restricción especificada por el parámetro restrictions.
  • 4: los valores de atributo de la parada caen fuera del valor codificado o de los dominios de rango esperados por el servicio. Por ejemplo, puede existir un número negativo donde se requieran números positivos
  • 5: el servicio no puede llegar a la parada.

Sugerencia:

El parámetro out_unassigned_stops no contiene la geometría de las paradas. Para visualizar las paradas no asignadas en un mapa, puede realizar lo siguiente

  • Utilice el atributo StopType para determinar si la entidad de parada corresponde a una entidad en los parámetros orders o depots.
  • Utilice el atributo Name para encontrar la entidad con el mismo nombre en los parámetros orders o depots.

solve_succeeded

Utilice este parámetro para determinar si el servicio ha podido encontrar la solución para el problema de generación de rutas para vehículos de entrada. Los mensajes de error se pueden conseguir realizando una solicitud para obtener el estado del trabajo.

ArcGIS Desktop

  • Inicio
  • Documentación
  • Soporte

Plataforma ArcGIS

  • ArcGIS Online
  • ArcGIS Desktop
  • ArcGIS Enterprise
  • ArcGIS for Developers
  • ArcGIS Solutions
  • ArcGIS Marketplace

Acerca de Esri

  • Quiénes somos
  • Empleo
  • Blog de Esri
  • Conferencia de usuarios
  • Cumbre de desarrolladores
Esri
Díganos su opinión.
Copyright © 2019 Esri. | Privacidad | Legal