MCシミュレーションを使用して次の積分を近似するにはどうすればよいですか?
ありがとう!
編集(一部のコンテキスト):シミュレーションを使用して積分を近似する方法を学習しようとしており、いくつかの困難に直面したときにいくつかの練習を行っています。
編集2 + 3:どういうわけか混乱して、積分を別々の部分に分割する必要があると思いました。だから、私は実際にそれを理解しました:
n <- 15000
x <- runif(n, min=-1, max=1)
y <- runif(n, min=-1, max=1)
mean(4*abs(x-y))
2
あなたは正しい軌道に乗っています!あなたが与える答えは正解に非常に近いものです。1つの小さな部分が欠落しています。(ヒント:のPDFは何である確率変数)は?
—
枢機
0.5です。したがって、「mean(4 * abs(xy))」を得るには2つの2を掛ける必要があります。やっと手に入れましたか?
—
私の名前
(+1)はい!:)数時間(8?)時間待たなければならないかもしれませんが、他のユーザー(私のような)がそれを支持できるように、戻って編集内容を回答に入れることを検討する必要があります。サイトへようこそ!引き続きここにご参加ください。乾杯。:)
—
枢機
興味のあるRについては、Karlが投稿した最大コードではそれほどエレガントではありません
—
NRH
integrate(Vectorize(function(y) integrate(function(x) abs(x-y), -1, 1)$value), -1, 1)
が、数値近似を行うことができます。cubatureパッケージを使用するadaptIntegrate(function(x) abs(x[1] - x[2]), c(-1, -1), c(1, 1))
ことができます。これは、たとえばシミュレーションが正常に動作するかどうかをテストする場合などに役立つ、積分の数値評価に関するいくつかのアイデアを提供するためのものです。