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
당신은 올바른 길을 가고 있습니다! 당신이주는 대답은 정답에 매우 가깝습니다. 작은 부분이 없습니다. ( 힌트 : 랜덤 변수 의 pdf 란 무엇입니까 ?)
—
추기경
0.5입니다. 따라서 'mean (4 * abs (xy))'를 제공하려면 두 개의 2를 곱해야합니다. 드디어 얻었습니까?
—
내 이름
(+1) 예 ! :) 몇 시간을 기다려야 할 수도 있지만 다른 사용자 (예 : 나와 같은)가 응답 할 수 있도록 되돌아 와서 수정 사항을 답변에 배치하는 것을 고려해야합니다. 사이트에 오신 것을 환영합니다! 계속 여기에 참여하기를 바랍니다. 건배. :)
—
추기경
Karl이 게시 한 최대 코드에서 우아하지는 않지만 관심있는 R의
—
NRH
integrate(Vectorize(function(y) integrate(function(x) abs(x-y), -1, 1)$value), -1, 1)
경우 숫자 근사를 수행 하고 얻을 수 있습니다 . 은 Using cubature의 패키지하는 adaptIntegrate(function(x) abs(x[1] - x[2]), c(-1, -1), c(1, 1))
데 사용할 수 있습니다. 이는 시뮬레이션이 올바르게 작동하는지 테스트 할 때 유용 할 수있는 적분의 수치 평가에 대한 몇 가지 아이디어를 제공하기위한 것입니다.