多くの変数の数値積分


12

ましょう及びFはX[ 0 1 ] 、NCは、これらの変数関数です。x=(x1,x2,,xn)[0,1]nf(x):[0,1]nC

この反復積分に再帰的なスキームはありますか?

[0,1]ndxif(x)

場合及びIブレーク[ 0 1 ] 100へのセグメントは、我々は10 20n=10[0,1]1020まで追加するポイント。よりスマートな方法が必要です。


実際、統合したい機能は は、ユニタリグループのHaarメジャーです。

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

2
次元が大きすぎない場合は、積分のスパース求積法を検討することもできます。
ポール

@ポールは、回答でこのトピックをもっと説明できますか?私はおそらく賛成票を投じる
ジョン・マンガル

回答:


15

多くの変数との統合では、通常、モンテカルロ法が適切です。その誤差はO(N)O(N)O(N14)O(N).

Since it is probabilistic, however, you need to integrate it multiple times using a set number of points to find a standard deviation and an estimate of your error.


1
For integration, the use of quasi-Monte-Carlo, for instance using Sobel sequences, is slightly better.
Lutz Lehmann

Ah, yes, I stated equi-distributed points (over pseudo-random) but didn't explicitly differentiate between the two.
Godric Seer

1
@GodricSeer Looks like Sobol sequences will build a nice evenly-spaced mesh, even in high dimensions. It seems he is addressing the same question: to have
1nf(xi)[0,1]nf dx
very quickly. Gray code and discrepancy seem to be issues.
john mangual

Yes, the Sobol sequency would build a good distribution of points. quasi-Monte-Carlo is likely one of the better methods for your problem.
Godric Seer

8

Sparse grid quadrature is an alternative approach to integrate in higher dimensions.

Quadrature relies on evaluating a weighted sum of function values at specific "optimal" points. Traditional quadrature uses a tensor product grid construction in higher dimensions, which means that you would have to evaluate the function at an exponentially growing number of points as the dimension increases.

The trick to sparse grid quadrature is that you can obtain the same order accuracy (in the asymptotic sense) using a small subset of the tensor product grid. The sparse points you choose end up being those that accurately integrate monomials of up to a desired total degree. The computational savings (compared to the tensor product grid) increase significantly as the dimension increases.

There are, however, drawbacks to this method that you should be aware.

  1. This method does not work well if your function is not smooth (or otherwise not well approximated by polynomial functions).
  2. While the order of accuracy of sparse grid quadrature may be equivalent to a tensor product grid, the relative accuracy may be much worse. This is because the constant in front of the sparse grid's order of accuracy can be very large.
  3. Sparse grids work well for relatively small dimensions. But there comes a dimension after which you'd probably be better off using another method (like monte carlo or its variants).

For more information on sparse grids, I recommend Burkardt's Sparse Grids in High Dimensions. If you're interested in code to generate sparse grids, you may want to consider these matlab files.

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.