Mapa de Previsão de Demanda
O mapa de previsão de demanda fica em Dashboard > Analytics > Heat Maps. Ele substitui o antigo esqueleto de heat map "corridas dos últimos N dias" por uma superfície real de demanda prevista, alimentada pelo modelo do AI Ops.
Layout da página
A página tem quatro regiões de controle:
- Seletor de horizonte — escolha a janela de previsão: 1 hora, 4 horas ou 24 horas à frente.
- Seletor de janela histórica — ao olhar para trás, escolha 24h, 7d ou 30d.
- Alternâncias de camada — ligue/desligue de forma independente Predicted demand, Actual history e Unmet demand.
- Controle deslizante de tempo — um slider horizontal que vai de -7 dias a +24 horas. O mapa redesenha conforme você arrasta.
Abaixo do mapa há cards de resumo: total de corridas previstas para o horizonte atual, o hex com maior demanda prevista e a contagem de eventos de demanda não atendida na janela visível.
Hexágonos H3
O mapa é coberto por hexágonos H3. Em mercados densos usamos resolução 9 (cerca de 0,1 km² por hex, com cerca de 150 m de aresta). Em mercados esparsos usamos resolução 8 (cerca de 0,7 km² por hex). A resolução é escolhida automaticamente pela densidade do subaccount.
Cada hex é colorido pela camada ativa:
- Predicted demand — verde (baixo) a vermelho (alto) pelas corridas previstas no horizonte selecionado.
- Actual history — mesma escala, baseado em corridas observadas na janela histórica.
- Unmet demand — intensidade do vermelho pela contagem de eventos de demanda não atendida. Veja Entendendo demanda não atendida.
Tooltip do hex
Clique em qualquer hex para abrir seu tooltip. Você verá:
| Campo | Significado |
|---|---|
| Predicted rides | Saída do modelo para o horizonte atual |
| Confidence interval | IC de 90% — ci_low até ci_high |
| Current supply | Veículos disponíveis no hex neste momento |
| Gap | Demanda prevista menos fornecimento atual |
| Last forecast | Quando a previsão deste hex foi atualizada pela última vez |
Se o gap for positivo, o hex está subabastecido para o horizonte — candidato a receber rebalanceamento. Se for negativo, está superabastecido.
Horizontes explicados
São treinadas três cabeças de modelo, uma por horizonte:
- 1 hora — melhor para "o que está prestes a acontecer". Maior acurácia porque features de lag dominam.
- 4 horas — melhor para "para onde mover veículos antes do almoço / jantar / pico do deslocamento". É o horizonte que o recomendador usa.
- 24 horas — melhor para "onde a frota deveria estar amanhã de manhã". Acurácia menor, mas o sinal basta para planejamento durante a noite.
O recomendador sempre usa o horizonte de 4 horas. No painel você pode alternar entre os três.
Lendo o controle deslizante de tempo
A posição 0 do slider é agora. À esquerda está o histórico observado (até 7 dias para trás); à direita, a previsão (até 24 horas à frente).
- À esquerda do 0 — a camada ativa é forçada para Actual history. O mapa mostra corridas que efetivamente começaram em cada hex durante a hora do slider.
- À direita do 0 — a camada ativa é forçada para Predicted demand. O mapa mostra a previsão do modelo para aquela hora.
Arrastar pela fronteira do 0 faz a transição suave entre observação e previsão.
Banner de previsão desatualizada
As previsões são atualizadas a cada hora. Se a previsão mais recente tiver mais de 90 minutos, um banner amarelo aparece acima do mapa: "Forecast may be stale — last refresh was X minutes ago." Enquanto o banner aparece:
- O mapa continua exibindo a última previsão válida.
- O recomendador esconde os dólares de ganho projetado (não confia em números obsoletos).
- Verifique o status dos crons (veja Solução de problemas).
Confiança
O intervalo de confiança de 90% (ci_low e ci_high) indica a certeza do modelo. Intervalos largos significam alta incerteza para aquele hex × hora — normalmente por baixo volume histórico de corridas no hex ou porque clima ou eventos empurram as entradas para uma região que o modelo viu pouco.
O recomendador de rebalanceamento pondera seu score de confidence pela largura do IC, então os cards em /dashboard/operations/rebalance já contabilizam a incerteza da previsão.
O que não está no mapa
- Demanda multimodal. A previsão é de corridas totais, não dividida entre patinete vs. bike vs. moped.
- Previsões em tempo real (sub-hora). O menor bucket é uma hora.
- Agregações entre subaccounts. Cada subaccount tem sua própria superfície de previsão; o AI Ops respeita RLS.
Relacionado
- Entendendo demanda não atendida — o que significam os hexes vermelhos de demanda não atendida.
- Recomendações de rebalanceamento — transformar previsão em ação.
- Fontes de dados: clima e eventos — o que alimenta o modelo.