Covariance Matrix Adaptation Evolution Strategy (CMAES)
O CMAES é um algoritmo de otimização estocástico e sem derivadas que evolui uma população de soluções candidatas. Ele adapta a matriz de covariância de uma distribuição normal multivariada para explorar eficientemente o espaço de busca, especialmente para problemas não lineares e mal condicionados.
Como Funciona
O CMAES adapta automaticamente sua estratégia de busca com base no histórico de sucesso, modificando a forma e tamanho da distribuição de amostragem para alinhar-se com a estrutura da função objetivo. Este método demonstrou eficácia na otimização contínua black-box.
Pontos Fortes e Fracos
Pontos Fortes
- ✅ Bom desempenho em paisagens de busca mal condicionadas e não separáveis
- ✅ Auto-adapta seus parâmetros de busca, reduzindo a necessidade de ajuste manual
- ✅ Robusto para uma variedade de problemas de otimização contínua
Pontos Fracos
- ❌ Computacionalmente dispendioso em termos do número de avaliações da função objetivo necessárias
- ❌ Pode requerer muitas avaliações, especialmente para problemas de alta dimensão
- ❌ As garantias teóricas de convergência não são tão fortes quanto as de alguns outros métodos
Aplicabilidade à Otimização Semafórica
O CMAES pode lidar com a natureza contínua dos comprimentos de ciclo e dos tempos de verde. A sua robustez a problemas mal condicionados pode ser benéfica em cenários onde as relações entre os parâmetros e o desempenho são complexas e não lineares.
No entanto, o número potencialmente elevado de avaliações necessárias pode torná-lo menos adequado dado o custo das simulações. Embora o CMAES seja poderoso para a otimização contínua, sua tendência a requerer um maior número de avaliações em comparação com os métodos Bayesianos pode torná-lo menos ideal para o cenário do usuário com simulações do Aimsun dispendiosas.
Consideração Importante
O CMAES depende da evolução de uma população de soluções ao longo de várias gerações, e cada geração requer a avaliação de múltiplas soluções candidatas. Com o Aimsun demorando 1-5 minutos por avaliação, o tempo total para o CMAES convergir poderia tornar-se muito longo se o problema requerer muitas gerações.