Como detectar furto de combustível e fraude em abastecimentos com IA

    Andrew M., VP of Data and Solutions
    AutorAndrew M., VP of Data and Solutions
    October 30, 2026
    Bico de bomba de combustível em trama de pontos, com uma moldura ao redor do gatilho e a etiqueta: abastecimento 67 L, 87%

    Detectar furtos de combustível e fraudes em abastecimentos nos dados de telemática sempre foi um desafio interessante. Os sistemas de monitoramento modernos, a Navixy entre eles, dão conta bem do recado. Mas os modelos de IA vêm ocupando aos poucos o lugar dos algoritmos clássicos de detecção: eles conseguem classificar eventos e identificar anomalias diretamente nos dados brutos.

    Testamos essa abordagem na prática. Construímos um protótipo que envia trechos de dados de telemática do IoT Query, a plataforma de análise da Navixy, ao modelo Jev, da Typesafe AI, e recebe a classificação do evento junto com pontuações que ajudam a interpretar o resultado. Vale deixar claro: o Jev não é apresentado como substituto das soluções existentes para detectar eventos de combustível. É uma ferramenta adicional e uma nova forma de construir soluções.

    O principal valor dessa abordagem é a flexibilidade e a personalização. A combinação de IoT Query e Jev permite que desenvolvedores e integradores de sistemas criem seus próprios aplicativos de tomada de decisão, ajustados com precisão aos processos de negócio de cada empresa. A ideia não é substituir o que já funciona, e sim ampliar o que é possível com os modelos de IA.

    Onde e por que modelos de IA como o Jev são úteis

    O Jev não escreve textos nem gera código. Sua tarefa principal é devolver decisões formalizadas e probabilidades que aplicativos e sistemas de decisão podem usar de imediato. O modelo recebe dois blocos de entrada:

    1. O estado do sistema (parâmetros, valores, contexto em JSON).
    2. Um conjunto de perguntas tipadas.

    O Jev avalia cada pergunta com base no estado recebido e devolve uma das opções fixas junto com uma probabilidade. O usuário ou o agente dele pode usar esses resultados depois em aplicativos, por exemplo, para tomar decisões.

    Como encontrar furtos e abastecimentos com o Jev

    Na gestão de frotas, as questões de combustível estão sempre entre as mais sensíveis. Hoje os furtos são menos frequentes, mas a fraude com comprovantes não acabou: o cupom diz 50 litros, e só 40 entraram no tanque.

    Tradicionalmente, usam-se médias móveis e aprendizado de máquina clássico para encontrar esses eventos. Agora, um modelo de IA pode ficar no centro da detecção. Sobre os dados brutos, ele responde «isto é um abastecimento», «isto é um furto», «isto é calibração ou transferência de líquido» ou «não tenho certeza», e já acrescenta a probabilidade e o volume calculado.

    Para análises personalizadas no ecossistema da Navixy, o IoT Query é uma escolha prática. Ele dá acesso a toda a gama de dados do cliente, da telemática aos dados de negócio usados em integrações e na criação de seus próprios aplicativos de análise. No nosso protótipo, usamos os dados brutos como base para analisar os eventos, e o Jev identifica o tipo de cada um.

    O protótipo funciona de forma simples:

    1. Um algoritmo acompanha o nível de combustível e marca os eventos candidatos (variações bruscas de volume).
    2. Ele recorta um trecho curto da série temporal com os parâmetros de telemática.
    3. Envia o trecho ao Jev junto com as perguntas tipadas.
    4. O modelo devolve a classe do evento, a probabilidade e estimativas adicionais.

    O resultado é um registro como este: 13:32 — abastecimento, 67 litros, probabilidade de 87%

    Como são a requisição e a resposta

    Tecnicamente, a interação é simples. Enviamos ao modelo um objeto state com os parâmetros do evento e um objeto questions com o que exatamente precisa ser avaliado.

    A requisição ao modelo:

    {
      "model": "typesafe/jev-1.13",
      "state": {
        "vehicle_speed": "...",
        "vehicle_stationary": "...",
        "gps_quality": "...",
        "..."
      },
      "questions": {
        "real_fuel_increase": {
          "type": "noul",
          "instructions": "Is the observed fuel increase a genuine added volume rather than sensor noise, tilt, a spike, or recovery from zero?",
          "criteria": {
            "true": "Sustained, physically plausible increase from a non-empty tank.",
            "false": "Change is within noise, oscillatory, a recovery from zero, or not a real fill."
          }
        },
        "..."
      }
    }
    

    O state lista os parâmetros e valores da janela: o tanque (antes, depois, diferença, velocidade de enchimento), o movimento (velocidade, se o veículo estava parado, GPS), a qualidade do sinal (ruído, lacunas, número de pontos) e os limites do perfil (abastecimento mínimo, tanque vazio, velocidade máxima na bomba).

    As questions são perguntas de sim ou não (noul): aumento real, redução real, ruído, veículo parado, parece um abastecimento, parece um furto, calibração. Há também uma pergunta de «escolher uma classe» (event_type): abastecimento, furto, anomalia, calibração ou sem certeza.

    A resposta traz as pontuações de cada indício e o resultado da classificação:

    {
      "answers": {
        "real_fuel_increase": { "noul": 0.87 },
        "real_fuel_decrease": { "noul": 0.11 },
        "sensor_noise": { "noul": 0.07 },
        "vehicle_stationary": { "noul": 0.77 },
        "matches_refuel_profile": { "noul": 0.94 },
        "matches_drain_profile": { "noul": 0.02 },
        "likely_calibration": { "noul": 0.08 },
        "gap_confounds_event": { "noul": 0.07 },
        "event_type": {
          "choice": "REFUEL",
          "confidence": 1.0,
          "probabilities": {
            "REFUEL": 1,
            "FUEL_DRAIN": 0,
            "FUEL_SENSOR_ANOMALY": 0,
            "CALIBRATION_SHIFT": 0,
            "UNKNOWN_FUEL_EVENT": 0
          }
        }
      }
    }
    

    Neste exemplo, o modelo escolheu a classe REFUEL, avaliou a correspondência com o perfil de abastecimento em 0,94 e a veracidade do aumento do nível de combustível em 0,87.

    Análise de eventos de combustível com o Jev no protótipo: um abastecimento de +63,0 L classificado com 100% de confiança no gráfico do nível de combustível, com as probabilidades por classe, os motivos e os sinais da decisão

    Quais resultados obtivemos?

    Testamos o modelo em janelas semanais de dados, aproximando as condições das tarefas de um gestor de frota, e comparamos os resultados com os eventos reais.

    Indicador Resultado
    Cobertura dos dados 93,8%
    Precisão 98,4%
    Confiabilidade dos abastecimentos e do volume calculado 99%

    O protótipo usou 25 parâmetros da camada de dados brutos do IoT Query, incluindo limites que podem ser ajustados para cada frota e sensor, além de métricas personalizadas.

    Essa flexibilidade permite refletir os fluxos de trabalho reais: juntar variações consecutivas em um único abastecimento, distinguir falhas de telemetria de um possível furto e tratar corretamente os casos extremos.

    O que vem a seguir

    Abastecimentos e furtos são apenas um cenário. No dia a dia de uma frota há muitas outras tarefas desse tipo:

    • entrada e saída de uma cerca virtual (geofence): uma mudança de rota combinada ou uma infração;
    • uma parada longa: descarga planejada ou espera;
    • perda de conexão: falta temporária de cobertura ou falha do dispositivo.

    Em todos esses casos, a combinação de IoT Query (dados brutos) + Jev (classificação determinística com probabilidades) pode se tornar a base de uma solução personalizada de análise de eventos ou de um sistema autônomo de tomada de decisão. Quer criar seus próprios aplicativos com dados de telemática? Fale com a gente.

    Para saber mais sobre como construir sistemas com agentes sobre dados de telemática, leia nosso artigo sobre análise conversacional.

    Compartilhar artigo