Quando é vantajoso iterar integrais numericamente?


8

Se houver uma integral -dimensional da forma [ 0 , 1 ] n + 1 f ( x , y )(n+1) normalmente alguém avaliaria isso usando uma biblioteca de integração multidimensional em todo o domínio, [ 0 , 1 ] n + 1 .

[0 0,1]n+1f(x,y)dnxdy,
[0 0,1]n+1

Mas há algumas condições em que pode fazer sentido executar a integral sobre separadamente, usando uma quadratura unidimensional e, em seguida, usar a biblioteca de integração multidimensional para avaliar o integrando sobre as outras n coordenadas? [ 0 , 1 ] n g ( x )yn

[0 0,1]ng(x)dnx,g(x)=0 01f(x,y)dy.

Isso pode fazer sentido, por exemplo, se é especialmente suave em função de y , mas não x . Mas quão suave exatamente precisa ser nesse caso? Meu palpite era que quase nunca faz sentido, porque muitos dos pontos de avaliação em quadratura 1-d seriam "desperdiçados", mas não tenho tanta certeza de que isso sempre se aplique. Isso é garantido pelo design dos métodos de integração de alta dimensão?fyx

No meu caso, é uma caixa preta, mas suave em y , e possui uma quantidade desconhecida de dobras e saltos em x em locais desconhecidos, e n é bastante alto ( n 4 ), portanto a integral sobre x tem para ser feito com algo especificamente para muitas dimensões. A integral over y pode ser feita com algo como regular . Neste exemplo, a função é suficientemente suave em y que quase parece funcionar, mas a integração repetida acaba sendo 30 vezes mais lenta, por isso estou me perguntando se a abordagem está equivocada.fyxnn4xyquadgky

Se você souber onde isso já é discutido na literatura, isso também seria útil.

Exemplo. (de por que isso não é trivial) Considere um "fácil" integral, o que é muito bom, ao contrário do que eu estou realmente interessado em: Poderíamos fazerMonte Carloingênuo e tridimensional no integrando, ou Monte Carlo ingênuo ( n - 1 ) tridimensional no integrando integrado uma vez wrt x 1 , que é g ( x 2 : n ) = - ( e - a - 1 ) / a (onde a = x 2x n ).

[0 0,1]ne-x1x2xndnx=F({1,,1}n{2,,2}n|-1).
n(n-1)x1g(x2:n)=-(e-uma-1)/umauma=x2xn

Com alguns álgebra, I calcularam que a variância do -dimensional N -ponto MC estimativa é 0,00244 N - 1 , e é 0,00167 N - 1 para o 4 integrante -dimensional de g , para uma redução de variância por um fator de 1,5 .(n=5)N0,00244N-10,00167N-14g1.5

Essa é uma redução insignificante na variação: seria negada usando vezes mais pontos de amostra, e isso é compensado pelo fato de o integrando interno poder ser mais de 1,5 vezes mais lento para avaliar. Se a função g = ( 1 - e - a ) / a acima for mais de 1,5 vezes mais lenta, isso representa uma perda líquida de precisão, mantendo o tempo de computação fixo.1.51.5g=(1-e-uma)/uma1.5

Presumivelmente, o mesmo tipo de troca se aplica ao considerar uma regra determinística para integrar sobre . O método de Monte Carlo torna essa análise muito mais fácil do que o caso geral, porque a integração sobre y atua como uma técnica muito simples de redução de variância. Mas estou realmente muito mais interessado em métodos determinísticos, que não consegui analisar tão facilmente.xy


2
Você pode usar apenas regras de quadratura diferentes em cada dimensão? Como é suave em y , você pode usar a quadratura de ordem baixa lá e a quadratura de ordem superior ao longo das dimensões menos suaves. Os pontos e pesos da quadratura são construídos por produtos tensores das regras 1-D. Isso deve reduzir drasticamente o número total de avaliações de funções. fy
Tyler Olsen

2
@TylerOlsen Não, mas essa é a questão ... (Além disso, certamente regras de alta ordem para dimensões suaves, e não o contrário?) Se a função for suficientemente difícil, eu trato de muitas dimensões não suaves com QMC ou grades esparsas ou tensores produtos de regras com refinamento adaptativo, etc., não é a alta precisão de integrar sobre desperdiçado pelos erros nas outras dimensões? Então, por que não usar apenas uma regra dimensional ( n + 1 ) sem desperdiçar as avaliações? Mas não tenho certeza de qual é o princípio geral certo, então estou perguntando se alguém sabe alguma coisa. y(n+1)
Kirill

@TylerOlsen Em outras palavras, deve, de alguma forma, depender de quão fácil é integrar a função sobre (muito fácil - use 1- d então n -d, mas muito difícil - use ( n + 1 ) -d). Mas o que é um bom guia ou um limite? y1n(n+1)
21416 Kirill

Ah, desculpe por isso. Eu virei na minha cabeça. Não posso dizer que conheço uma boa regra de ouro aqui, então alguém terá que seguir essa.
Tyler Olsen

Respostas:


4

Esclarecimento: Minha resposta foi escrita especificamente para rotinas de integração adaptativa com controle determinístico de erros como este . Torna-se discutível para a grade esparsa e rotinas de integração baseadas em Monte Carlo, cujo controle de erros não é executado da maneira descrita abaixo.

Um custo significativo de rotinas de integração automáticas baseadas em produto de caixa-preta é o controle de erros, sob dois aspectos

  1. Avaliações de função desperdiçada. Toda integração adaptativa funciona estimando o integrando e o erro usando uma regra de baixa ordem ou particionamento mais grosso e repetindo-o com regras de ordem superior progressivamente ou partições mais refinadas até que os requisitos de erro sejam atendidos. As regras de integração aninhada permitem que parte do trabalho realizado nas etapas anteriores seja reciclada, mas geralmente nem todas.
  2. Em um esforço para conservar as avaliações de funções, regras altamente aninhadas, como Gauss-Kronrod ou Newton-Cotes, são frequentemente usadas em códigos de integração adaptativos. Regras de quadratura aninhadas são regras de quadratura abaixo do ideal, pois são consideravelmente menos precisas que as regras ideais (por exemplo, Gauss-Legendre e Clenshaw Curtis) para uma classe específica de funções em uma ordem de quadratura fixa. Em outras palavras, regras aninhadas fazem uso menos eficiente de avaliações de função.

yyf(x,y)yr

|k=1rWkf(x,yk)-[0 0,1]f(x,y)dy|ϵpara todos x[0 0,1]n,
f(x,y)yxrxϵ

g(x)ng(x)

f(x,y)

Para dar um exemplo de aplicação, esse problema exato surgiu para mim na avaliação de integrais singulares volume a volume neste artigo , e meu tratamento é semelhante ao proposto acima. Como regra geral, é sempre aconselhável remover o maior número possível de dimensões usando argumentos analíticos antes de alimentar o problema por meio de uma rotina de integração de caixa preta.


y

Meu argumento é simplesmente que, se você assumir um método adaptativo com controle determinístico de erros, a avaliação de algumas dimensões de forma fechada (ou semi-fechada) elimina etapas inevitáveis ​​que, de outra forma, seriam realizadas numericamente. Mas seu exemplo (excelente) é aquele em que um método adaptativo determinístico nunca seria usado em primeiro lugar.
Richard Zhang

Suponha que você tenha usado um método adaptativo determinístico padrão, por exemplo, ab-initio.mit.edu/wiki/index.php/Cubature , então eu ficaria muito, muito surpreso se você não obtiver uma velocidade de fator inteira cortando uma das dimensões semi-analiticamente.
Richard Zhang

Usar o Cubature exatamente como você sugere (o que é uma sugestão perfeitamente razoável) é como eu obtive a figura "30 vezes mais lenta" na minha pergunta em primeiro lugar, então fiquei surpreso (daí a pergunta). Eu só quis dizer o exemplo de Monte Carlo como algo fácil de analisar; na verdade, estou mais interessado em métodos determinísticos.
Kirill

n+1(n+1)
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.