Ir para o conteúdo

Filtro de Demanda

O filtro de demanda é um recurso do OptFlow que permite reduzir a duração e/ou o volume da demanda de tráfego durante as simulações de otimização. Isso acelera significativamente o processo de otimização sem comprometer a qualidade dos resultados.

Por que Usar o Filtro de Demanda?

Durante a otimização, o OptFlow executa dezenas ou centenas de simulações. Cada simulação leva um tempo proporcional à duração da demanda de tráfego. Reduzir a demanda oferece benefícios importantes:

Benefício Descrição
Iterações mais rápidas Simulações curtas = mais iterações no mesmo tempo
Convergência acelerada Mais avaliações = melhor exploração do espaço
Menos recursos Menor uso de memória e processamento
Testes rápidos Ideal para validar configurações antes de rodar completo

Exemplo de Economia

Uma demanda de 2 horas simulada em 10 minutos reais. Com filtro de 30 minutos (25%), cada simulação leva ~2.5 minutos. Em 50 iterações, você economiza 6 horas de processamento!

Configuração do Filtro

Parâmetros Disponíveis

Parâmetro Descrição Valores
demand_filter_duration_minutes Duração máxima em minutos Ex: 15, 30, 60
demand_filter_percentage Percentual do volume 1-100%

Filtro por Duração

Trunca a demanda para os primeiros N minutos:

{
  "demand_filter_duration_minutes": 30
}

Comportamento: - Demanda original: 2 horas (120 minutos) - Filtro: 30 minutos - Resultado: Apenas os primeiros 30 minutos de demanda são simulados

Filtro por Percentual

Reduz o volume de todos os itens de demanda:

{
  "demand_filter_percentage": 50
}

Comportamento: - Volume original: 10.000 veículos - Filtro: 50% - Resultado: 5.000 veículos são gerados na simulação

Combinação de Filtros

Você pode usar ambos os filtros simultaneamente:

{
  "demand_filter_duration_minutes": 30,
  "demand_filter_percentage": 75
}

Aplicação na Interface

Na interface do OptFlow, antes de iniciar a otimização:

  1. Localize a seção "Controles de Otimização" ou "Optimization Controls"
  2. Configure o campo "Duração (minutos)" para o tempo desejado
  3. Configure o campo "Volume (%)" para o percentual desejado
  4. Inicie a otimização normalmente
┌────────────────────────────────────────────────────────────────┐
│                 Controles de Otimização                        │
├────────────────────────────────────────────────────────────────┤
│                                                                │
│  Iterações:     [ 100 ]                                        │
│                                                                │
│  ┌─ Filtro de Demanda ──────────────────────────────────────┐  │
│  │                                                          │  │
│  │  Duração (minutos):  [ 30    ]                           │  │
│  │                                                          │  │
│  │  Volume (%):         [ 100   ]                           │  │
│  │                                                          │  │
│  └──────────────────────────────────────────────────────────┘  │
│                                                                │
│            [ Iniciar Otimização ]                              │
│                                                                │
└────────────────────────────────────────────────────────────────┘

Presets Rápidos

O OptFlow oferece presets comuns para facilitar a configuração:

Preset Duração Volume Uso Recomendado
Teste Rápido 15 min 25% Validação inicial, testes de configuração
Otimização Ágil 30 min 50% Otimização exploratória
Otimização Padrão 60 min 75% Uso geral
Otimização Completa - - Simulação integral (sem filtro)

Como Funciona Internamente

1. Duplicação da Demanda

O OptFlow cria uma cópia temporária da demanda original no Aimsun:

Demanda Original → Cópia Temporária Filtrada → Usada na Otimização

2. Aplicação do Filtro de Duração

Itens de demanda que iniciam após o tempo limite são removidos:

Item 1: 00:00 - 00:30 ✅ Mantido
Item 2: 00:30 - 01:00 ✅ Mantido (parcial se necessário)
Item 3: 01:00 - 01:30 ❌ Removido (após 30 min)
Item 4: 01:30 - 02:00 ❌ Removido (após 30 min)

3. Aplicação do Filtro de Percentual

O fator global da demanda é ajustado:

Fator Original: 100%
Fator Aplicado: 100% × 50% = 50%

4. Restauração

Após a otimização, a demanda original é restaurada automaticamente.

Informações no Estudo

Quando você usa filtros de demanda, as informações são salvas no estudo:

{
  "study_info": {
    "demand_filter_info": {
      "duration_minutes": 30,
      "percentage": 50,
      "original_demand_id": 12345,
      "original_demand_name": "Demanda Pico Manhã"
    }
  }
}

Boas Práticas

1. Comece com Filtros Agressivos

Para exploração inicial, use filtros agressivos:

{
  "demand_filter_duration_minutes": 15,
  "demand_filter_percentage": 25
}

2. Refine Gradualmente

À medida que a otimização converge, reduza os filtros:

  1. Fase 1 (exploração): 15 min, 25%
  2. Fase 2 (refinamento): 30 min, 50%
  3. Fase 3 (validação): Sem filtro

3. Mantenha o Período de Pico

Se sua demanda tem um pico claro, configure a duração para incluí-lo:

00:00 ─────────── 06:00 ──────────── 09:00 ─────────── 12:00
                    │     PICO      │
                    └───────────────┘
                    Inclua este período no filtro!

4. Valide com Simulação Completa

Após encontrar bons parâmetros com filtro, valide os resultados:

  1. Aplique a melhor configuração encontrada
  2. Execute uma simulação completa (sem filtro)
  3. Compare os indicadores

5. Documente seus Filtros

Ao reportar resultados, sempre indique os filtros usados, pois os valores absolutos de indicadores serão diferentes.

Limitações

Atenção

  • Warm-up: Simulações curtas podem não capturar o warm-up do tráfego
  • Saturação: Percentuais muito baixos podem não representar condições de saturação
  • Indicadores absolutos: Valores como "Fluxo Total" serão menores que na demanda completa
  • Comparação: Compare apenas resultados com o mesmo filtro aplicado

Exemplo de Workflow

Cenário: Otimização de Corredor

  1. Demanda original: 2 horas de pico manhã, 15.000 veículos

  2. Fase 1 - Exploração rápida:

    {
      "n_iter": 100,
      "demand_filter_duration_minutes": 30,
      "demand_filter_percentage": 50
    }
    
    Tempo estimado: ~2 horas

  3. Fase 2 - Refinamento:

    {
      "n_iter": 50,
      "demand_filter_duration_minutes": 60,
      "demand_filter_percentage": 75
    }
    
    Tempo estimado: ~3 horas

  4. Fase 3 - Validação final:

  5. Aplique a melhor configuração
  6. Execute simulação completa
  7. Compare com baseline

Próximos Passos