Ir para o conteúdo

Considerações Práticas e Melhores Práticas

Para obter os melhores resultados com o OptFlow, considere as seguintes práticas ao usar os samplers disponíveis (TPE, OptFlow, CMAES, HEBO, Random, Hill Climbing, Simulated Annealing, Sequencial):

Ajuste de Parâmetros dos Algoritmos (Samplers)

Embora o OptFlow forneça padrões razoáveis, ajustar os parâmetros internos de alguns samplers pode melhorar o desempenho. Considere valores iniciais como:

  • Otimização Bayesiana (TPE/OptFlow/HEBO):
    • Número de avaliações iniciais aleatórias: 10-15% do orçamento total (n_iter). Isso ajuda o modelo (TPE, OptFlow, HEBO) a ter uma visão inicial do espaço de busca. (Para HEBO, pode ser configurado internamente).
    • Fator de exploração (se aplicável, especialmente em OptFlow): Ajuste para balancear a busca em novas áreas vs. refinar soluções conhecidas (valores menores favorecem explotação, maiores favorecem exploração).
  • CMAES:
    • Tamanho da população: 4 + floor(3 * ln(n)), onde n é a dimensão do problema (número de variáveis sendo otimizadas).
    • Passo inicial (sigma0): Um valor como 0.3 * (limite_superior - limite_inferior) pode ser um bom ponto de partida.
  • Simulated Annealing:
    • Temperatura inicial: Alta o suficiente para permitir uma probabilidade razoável (ex: ~50%) de aceitar movimentos piores no início.
    • Agenda de resfriamento: Uma taxa multiplicativa (T = α * T, onde α está entre 0.9 e 0.99) é comum.
  • Hill Climbing / Random: Geralmente não possuem parâmetros complexos para ajustar no contexto do OptFlow, além dos limites das variáveis.

Parâmetros Recomendados ## Uso Eficiente do Recurso "Bloquear Parâmetro"

A funcionalidade de "bloquear parâmetro" (disponível na configuração de Otimização) é poderosa para incorporar conhecimento prévio ou restrições:

  • Bloqueie parâmetros já bem ajustados: Se você confia nos valores atuais de certos offsets ou tempos de verde, fixe-os.
  • Fixe parâmetros com restrições externas: Se houver limites operacionais ou políticos para certos parâmetros.
  • Reduza progressivamente o espaço de busca: Comece otimizando um conjunto maior de parâmetros e, após algumas iterações (talvez usando o modo Sequencial), analise a sensibilidade e bloqueie aqueles que parecem estáveis ou menos impactantes.

Esta abordagem pode reduzir significativamente o espaço de busca e melhorar a eficiência da otimização, especialmente para samplers como TPE e OptFlow.

Monitoramento e Critérios de Parada

Monitore ativamente o progresso da otimização na plataforma OptFlow:

  • Acompanhe a convergência: Observe o gráfico do melhor valor da função objetivo encontrado ao longo das iterações. Ele está se estabilizando? A taxa de melhoria diminuiu?
  • Observe a variabilidade: Se os resultados flutuam muito entre iterações, pode indicar ruído na simulação. Considere samplers mais robustos a ruído como HEBO ou OptFlow.
  • Considere múltiplas execuções curtas: Em vez de uma única execução muito longa, especialmente com algoritmos estocásticos (todos exceto Hill Climbing em sua forma pura), múltiplas execuções com diferentes seeds podem dar mais confiança nos resultados.

Defina critérios de parada claros, além do n_iter:

  • Valor objetivo satisfatório: Se um limiar de desempenho aceitável for atingido.
  • Estagnação: Se não houver melhoria significativa no melhor valor objetivo por um número considerável de iterações (ex: últimas 20% das iterações).
  • Orçamento computacional: Tempo máximo de execução ou número máximo de simulações Aimsun.

Uso de Salvar e Continuar

Utilize a funcionalidade de "salvar e continuar" a otimização (disponível ao iniciar a execução no Aimsun) para evitar a perda de progresso, especialmente para execuções longas. Esta funcionalidade também permite analisar resultados intermediários e ajustar a estratégia (ex: mudar parâmetros do sampler, bloquear variáveis, ou até mesmo decidir parar antes se a convergência for alcançada) se necessário.

Abordagens Híbridas Avançadas (Sampler 'Sequencial')

O sampler 'Sequencial' permite combinar diferentes algoritmos em fases distintas da otimização. Isso pode ser útil para:

  1. Exploração inicial + Explotação final: Começar com Random para cobrir o espaço de busca (ex: 20% das iterações) e depois mudar para TPE ou OptFlow para refinar as melhores regiões encontradas (ex: 80% restantes das iterações).
  2. Otimização Sequencial de Parâmetros: Otimizar apenas cycle e offset nas primeiras iterações com um sampler eficiente como TPE, depois bloquear cycle e otimizar offset e phase_duration com TPE ou OptFlow, etc.

Esta abordagem híbrida requer mais planejamento, mas pode aproveitar os pontos fortes de diferentes algoritmos e estratégias.

Abordagem Híbrida Sequencial ## Consideração do Ruído nas Simulações

As simulações microscópicas do Aimsun são inerentemente estocásticas (ruidosas):

  • Escolha do Sampler: Para simulações com alta variabilidade, considere utilizar HEBO ou OptFlow (que modela incerteza). TPE também pode lidar com algum ruído. CMAES e Simulated Annealing são inerentemente estocásticos e podem ser menos sensíveis a pequenas flutuações do que Hill Climbing.
  • Múltiplas Replicações Aimsun: Aumentar o número de replicações por avaliação no Aimsun pode fornecer estimativas mais estáveis da função objetivo, mas aumenta significativamente o custo computacional. É um trade-off a ser considerado.
  • Parâmetros do Sampler: Ajuste os parâmetros de exploração/explotação (quando aplicável, ex: em OptFlow) para ser mais conservador (favorecer explotação) em ambientes ruidosos, ou use samplers como HEBO que são projetados para isso.