integração numérica em muitas variáveis


12

Vamos e ser uma função nessas variáveis.x=(x1,x2,,xn)[0,1]nf(x):[0,1]nC

Existe um esquema recursivo para essa integral iterada?

[0,1]ndxif(x)

Se e eu dividir em 100 segmentos, temos pontos para somar. Deve haver uma maneira mais inteligente.n=10[0,1]1020


De fato, a função que desejo integrar é a medida de Haar do grupo unitário.

U(n)f(A) dA=1n![0,2π]nj<k|eiθjeiθk|2f(θ1,,θn) dθ12π  dθn2π

2
Se sua dimensão não for muito grande, considere também métodos de quadratura esparsa para sua integral.
Paul

@Paul, você pode explicar mais esse tópico em uma resposta? Provavelmente vou votar
novamente

Respostas:


15

Para integrações com muitas variáveis, o método Monte Carlo geralmente é um ajuste decente. Seu erro diminui como onde N é o número de pontos equidistribuídos selecionados. Obviamente, isso não é bom para espaços de baixa dimensão (1D e 2D), onde existem métodos de alta ordem. A maioria desses métodos determinísticos, no entanto, ocupa um grande número de pontos em dimensões mais altas. Por exemplo, um esquema 1D de 1ª ordem é em 2D e em 3D. A força do método Monte Carlo é que a convergência de erros é independente da dimensão espacial. Não importa se o seu espaço é 1D ou 100D, é . O(N)O(N)O(N14)O(N)

Como é probabilístico, no entanto, você precisa integrá-lo várias vezes usando um número definido de pontos para encontrar um desvio padrão e uma estimativa do seu erro.


1
Para integração, o uso de quase-Monte-Carlo, por exemplo, usando seqüências de Sobel, é um pouco melhor.
Lutz Lehmann

Ah, sim, afirmei pontos equi-distribuídos (sobre pseudo-aleatórios), mas não diferenciei explicitamente os dois.
precisa

1
@GodricSeer Parece que as sequências de Sobol criarão uma malha bem espaçada, mesmo em altas dimensões. Parece que ele está abordando a mesma questão: ter muito rapidamente. Código cinza e discrepância parecem ser problemas.
1nf(xi)[0,1]nf dx
john mangual

Sim, a sequência de Sobol criaria uma boa distribuição de pontos. quase-Monte-Carlo é provavelmente um dos melhores métodos para o seu problema.
Godric Seer

8

A quadratura de grade esparsa é uma abordagem alternativa para integrar em dimensões mais altas.

A quadratura depende da avaliação de uma soma ponderada dos valores das funções em pontos "ótimos" específicos. A quadratura tradicional usa uma construção da grade do produto tensorial em dimensões mais altas, o que significa que você teria que avaliar a função em um número exponencialmente crescente de pontos à medida que a dimensão aumenta.

O truque para poupar a quadratura da grade é que você pode obter a mesma precisão de ordem (no sentido assintótico) usando um pequeno subconjunto da grade do produto tensorial. Os pontos esparsos que você escolhe acabam sendo aqueles que integram com precisão monômios até o grau total desejado . As economias computacionais (comparadas à grade de produtos tensores) aumentam significativamente à medida que a dimensão aumenta.

No entanto, existem desvantagens neste método que você deve estar ciente.

  1. Este método não funciona bem se sua função não for suave (ou não for bem aproximada por funções polinomiais).
  2. Embora a ordem de precisão da quadratura da grade esparsa possa ser equivalente a uma grade de produto tensorial, a precisão relativa pode ser muito pior. Isso ocorre porque a constante na frente da ordem de precisão da grade esparsa pode ser muito grande.
  3. As redes esparsas funcionam bem para dimensões relativamente pequenas. Mas chega uma dimensão após a qual você provavelmente se sairia melhor usando outro método (como monte carlo ou suas variantes).

Para obter mais informações sobre grades esparsas, recomendo as Sparse Grids de Burkardt em altas dimensões . Se você estiver interessado em código para gerar grades esparsas, considere esses arquivos matlab .

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.