Pular para o conteúdo
GMPTech
Todos os cases
Logística2024 até 2025

Motor de roteirização de frota

Peso, cubagem, limite de paradas e janela de entrega resolvidos por um solver, em vez de uma manhã inteira montando romaneio na mão.

01
5
validações antes de resolver
02
2
provedores de rota integrados

Desafio

Montar o romaneio era trabalho manual e caro. Cada veículo tem limite de peso e de volume, cada motorista aguenta um número de paradas, e metade dos endereços de destinatário chega sem coordenada ou com cubagem faltando. Quando o roteiro saía errado, o erro só aparecia com o caminhão já carregado. E cada consulta a API externa de rota entrava na fatura.

Entrega

Assumi e evoluí o motor. Antes de tentar resolver qualquer coisa ele valida: data de partida no passado, roteiro sem destino, destinatários demais para a frota disponível, base de partida sem coordenada, peso total acima da capacidade somada dos veículos. Completa a cubagem que falta, geocodifica endereço sem coordenada, agrupa documentos por destinatário, monta a matriz de distâncias e manda para o solver em Python. Tudo em fila, porque resolver a frota inteira não cabe no tempo de uma requisição. Terminado o cálculo, ele cria o romaneio sozinho e devolve para a operação.

Resultado

O roteiro deixou de ser uma manhã de trabalho e passou a rodar em segundo plano. O erro passou a aparecer na validação, e não com o caminhão carregado. E a conta das APIs externas de rota caiu, porque distância já calculada passou a ser reaproveitada em vez de comprada de novo.

Arquitetura

OperaçãoAPI de roteirizaçãoValidação5 regrasGeocodificaçãoFilaSolver PythonRomaneiocriado sozinho
Arquitetura — Motor de roteirização de frota

Conte o que está travando.

Resposta em um dia útil. Se a GMPX não for a escolha certa para o seu caso, você vai ouvir isso, com uma indicação de quem é.

Próximo case

Emissão fiscal sob regra de governo

Ver o case