Método de entropia cruzada - Cross-entropy method

O método de entropia cruzada ( CE ) é um método de Monte Carlo para amostragem de importância e otimização . É aplicável a problemas combinatórios e contínuos , com um objetivo estático ou ruidoso.

O método aproxima o estimador de amostragem de importância ideal, repetindo duas fases:

  1. Extraia uma amostra de uma distribuição de probabilidade.
  2. Minimize a entropia cruzada entre esta distribuição e uma distribuição de destino para produzir uma amostra melhor na próxima iteração.

Reuven Rubinstein desenvolveu o método no contexto de simulação de eventos raros , onde pequenas probabilidades devem ser estimadas, por exemplo, em análise de confiabilidade de rede, modelos de enfileiramento ou análise de desempenho de sistemas de telecomunicações. O método também foi aplicado ao caixeiro viajante , atribuição quadrática , alinhamento de sequência de DNA , corte máximo e problemas de alocação de buffer.

Estimativa por meio de amostragem de importância

Considere o problema geral de estimar a quantidade

,

onde é alguma função de desempenho e é membro de alguma família paramétrica de distribuições. Usando a amostragem de importância, essa quantidade pode ser estimada como

,

de onde é uma amostra aleatória . Para positivo , a densidade de amostragem de importância teoricamente ideal (PDF) é dada por

.

Isso, no entanto, depende do desconhecido . O método CE visa aproximar o PDF ideal, selecionando adaptativamente os membros da família paramétrica que estão mais próximos (no sentido de Kullback-Leibler ) do PDF ideal .

Algoritmo CE genérico

  1. Escolha o vetor de parâmetro inicial ; defina t = 1.
  2. Gere uma amostra aleatória de
  3. Resolva para onde
  4. Se a convergência for alcançada, pare ; caso contrário, aumente t em 1 e repita a partir da etapa 2.

Em vários casos, a solução para a etapa 3 pode ser encontrada analiticamente . Situações em que isso ocorre são

  • Quando pertence à família exponencial natural
  • Quando é discreto com suporte finito
  • Quando e , então corresponde ao estimador de máxima verossimilhança com base naqueles .

Otimização contínua - exemplo

O mesmo algoritmo CE pode ser usado para otimização, em vez de estimativa. Suponha que o problema seja maximizar alguma função , por exemplo ,. Para aplicar CE, considera-se primeiro o problema estocástico associado de estimativa para um dado nível , e família paramétrica , por exemplo a distribuição gaussiana unidimensional , parametrizada por sua média e variância ( aqui). Logo, para um dado , o objetivo é encontrar de forma que seja minimizado. Isso é feito resolvendo a versão de amostra (contraparte estocástica) do problema de minimização de divergência KL, como na etapa 3 acima. Acontece que os parâmetros que minimizam a contraparte estocástica para esta escolha de distribuição alvo e família paramétrica são a média da amostra e a variância da amostra correspondentes às amostras de elite , que são aquelas amostras que têm valor de função objetivo . O pior dos exemplos de elite é então usado como o parâmetro de nível para a próxima iteração. Isso produz o seguinte algoritmo aleatório que coincide com o chamado Algoritmo Normal Multivariado de Estimação (EMNA), um algoritmo de estimativa de distribuição .

Pseudo-código

// Initialize parameters
μ := −6
σ2 := 100
t := 0
maxits := 100
N := 100
Ne := 10
// While maxits not exceeded and not converged
while t < maxits and σ2 > ε do
    // Obtain N samples from current sampling distribution
    X := SampleGaussian(μ, σ2, N)
    // Evaluate objective function at sampled points
    S := exp(−(X − 2) ^ 2) + 0.8 exp(−(X + 2) ^ 2)
    // Sort X by objective function values in descending order
    X := sort(X, S)
    // Update parameters of sampling distribution                  
    μ := mean(X(1:Ne))
    σ2 := var(X(1:Ne))
    t := t + 1
// Return mean of final sampling distribution as solution
return μ

Métodos relacionados

Veja também

Artigos de jornal

  • De Boer, PT., Kroese, DP, Mannor, S. e Rubinstein, RY (2005). Um tutorial sobre o método de entropia cruzada. Annals of Operations Research , 134 (1), 19-67. [1]
  • Rubinstein, RY (1997). Otimização de Modelos de Simulação de Computador com Eventos Raros, European Journal of Operational Research , 99 , 89-112.

Implementações de software

Referências