Descripción general de la API de Route Optimization

Ruta de optimización es una API de Google Maps Platform que acepta objetivos de rutas de vehículos y restricciones operativas en forma de datos estructurados para proporcionar un plan de ruta para uno o más vehículos.

Por qué usar la optimización de rutas

Con la API de Route Optimization, puedes establecer o definir mejor un proceso automatizado de envío o planificación de rutas que mejore la eficiencia operativa de tus necesidades de transporte. El servicio genera los mejores planes de rutas posibles para cumplir esas restricciones, con parámetros que permiten expresar tus objetivos y limitaciones operativos únicos, y un algoritmo creado a partir de los datos de confianza de Google Maps. Estos son algunos ejemplos de casos de uso:

  • En una empresa de logística, se usa la optimización de rutas a fin de optimizar las asignaciones de todos los envíos al día siguiente y proporcionar una ruta para cada envío que optimiza la eficiencia de la distancia y el tiempo, el ahorro de costos, la entrega de tiempo y la satisfacción de los conductores y los clientes finales.
  • Una empresa de entrega de comida a pedido usa la optimización de rutas en su proceso de envío en tiempo real para elegir el mejor conductor activo a fin de recoger varios pedidos nuevos y, luego, insertarlos en sus rutas existentes.
  • Un proveedor de servicios médicos usa la optimización de rutas para asignar proveedores de atención médica a citas, lo que mejora la eficiencia de las rutas para cada proveedor a lo largo del día.
  • Un proveedor de servicios de campo usa la optimización de rutas para encontrar la ruta y la secuencia óptimas para las citas de servicio del técnico y volver a realizar optimizaciones cuando se producen cambios de condición, como los retrasos en la ruta.

Qué puedes hacer con la optimización de rutas

Con la API de Route Optimization, puedes optimizar las rutas y las asignaciones de tareas para una flota de vehículos, teniendo en cuenta varios objetivos y restricciones.

Ejemplos de objetivos:

  • Eficiencia de viajes: Define tus requisitos de eficiencia de viajes en función de parámetros como la distancia y el tiempo hasta el destino.
  • A la hora de llegar: Asegúrate de que los vehículos lleguen a tiempo para sus tareas. Por ejemplo, define un período determinado para una acción de retiro, entrega o servicio.
  • Costo de uso del vehículo: Minimiza la cantidad de vehículos necesarios para realizar las tareas para ahorrar costos.
  • Balanceo de cargas: Garantiza que las tareas estén distribuidas de manera equitativa en toda la flota de vehículos y el personal.

Estos son algunos ejemplos de las restricciones:

  • Horario de trabajo de los conductores: Hora de inicio y finalización del trabajo, así como la hora de los descansos.
  • Capacidad del vehículo: Es la cantidad máxima de carga que puede transportar un vehículo a la vez.
  • Períodos: Es un horario específico requerido para la llegada, como la disponibilidad del cliente o el horario de operación de la tienda.
  • Dependencias y compatibilidad: Define las dependencias de trabajo de una de las siguientes maneras:

    • Requiere tipos específicos de vehículo o personal
    • Requiere que se realice otra tarea primero
    • Un envío debe ser el único que ingrese al vehículo en un momento determinado.

Consulta las guías de referencia para desarrolladores (REST, gRPC) a fin de obtener detalles y todos los parámetros disponibles.

Cómo funciona la optimización de rutas

La API de Route Optimization usa varias entradas para mostrar un plan de rutas. Las entradas incluyen vehículos, tareas o envíos, objetivos y restricciones. Un plan de ruta incluye la asignación de tareas a los vehículos, las rutas de varias paradas para cada vehículo y las métricas relacionadas.

La API de Route Optimization logra esto usando dos métodos:

  • OptimizeTours: Una API síncrona que requiere que el cliente espere la respuesta del servidor antes de continuar con otras tareas
  • BatchOptimizeTours: Una API asíncrona, que permite al cliente realizar otras tareas antes de que el servidor finalice y responda.

Ambos métodos comparten la misma interfaz y los mismos parámetros admitidos. Puedes leer más sobre BatchOptimizeTours en Extremos síncronos y asíncronos.

La API de Route Optimization acepta una solicitud HTTP POST con un cuerpo de solicitud JSON que contiene los detalles de la entrada.

La solicitud de OptimizeTours

La solicitud consta de las siguientes entidades obligatorias:

  • Modelo: Una entidad global en la que se establecen la configuración y las restricciones a nivel global También contiene Envíos y Vehículos.
  • Envío: Se usa para definir una tarea o un envío real que podría incluir una tarea de retiro y una visita de entrega, además de los atributos correspondientes, incluidos las ubicaciones y otros atributos, restricciones y funciones de costo. Consulta la documentación de referencia de envío (REST, gRPC) para obtener más detalles.
  • Vehículo: Se usa para definir un vehículo (o conductor, personal) y los atributos de viaje correspondientes, incluidas las ubicaciones de partida y otros atributos de vehículo o viaje, restricciones y funciones de costo. Consulta (REST, gRPC) para obtener más detalles.

Consulta Optimización del pedido de detención de retiro y entrega para ver un ejemplo simple.

La respuesta de OptimizeTours

La API de Route Optimization muestra una respuesta JSON que incluye el plan de rutas para los vehículos y las tareas o los envíos.

  • Rutas: Contiene las rutas de cada vehículo con sus tareas (o envíos) asignadas.
  • Métricas: Métricas agregadas sobre el plan de ruta generado

Consulta Optimización del pedido de detención de retiro y entrega para ver un ejemplo simple.

Obtén más detalles sobre cómo construir la solicitud y cómo interpretar la respuesta en Cómo interpretar la respuesta.

Recursos

En la siguiente tabla, se resumen los recursos disponibles a través de la API de optimización de rutas junto con los datos que muestra.

Recursos de datos Datos que se muestran Formato de devolución
batchOptimizeTours (REST, gRPC) Muestra el nombre del recurso de una operación de larga duración, que indica cuándo se completó el procesamiento. JSON o gRPC proto
optimizeTours (REST, gRPC) Muestra una ruta optimizada con detalles de las visitas y las métricas. JSON o gRPC proto

Cómo usar la optimización de rutas

1 Prepárate Comienza con Configura tu proyecto de Google Cloud y completa las instrucciones de configuración que aparecen a continuación.
2 Cómo ejecutar una solicitud básica y recibir una respuesta Después de la configuración, comienza por enviar una solicitud básica y obtén la respuesta siguiendo las instrucciones Cómo crear una solicitud e Interpretar la respuesta.
3 Prueba una situación más avanzada y comienza a crear tu propia solicitud Explora situaciones de ejemplo que comienzan con la optimización de pedidos, detener pedidos de retiro y entrega y comienza a compilar solicitudes que coincidan con tus casos de uso.

Bibliotecas cliente disponibles

Para obtener una lista de las bibliotecas cliente disponibles para la API de Route Optimization, consulta Cómo usar bibliotecas cliente.

Próximos pasos