Как мне аппроксимировать следующий интеграл с помощью симуляции MC?
Благодарность!
Редактировать (в некотором контексте): я пытаюсь научиться использовать симуляцию для аппроксимации интегралов, и я получаю некоторую практику, когда сталкиваюсь с некоторыми трудностями.
Правка 2 + 3 : Каким-то образом я запутался и подумал, что нужно разделить интеграл на отдельные части. Итак, я на самом деле понял это:
n <- 15000
x <- runif(n, min=-1, max=1)
y <- runif(n, min=-1, max=1)
mean(4*abs(x-y))
r
self-study
monte-carlo
Мое имя
источник
источник
integrate(integrate(abs(x-y), y, -1, 1), x, -1, 1);
и получить ответ 8/3.integrate(Vectorize(function(y) integrate(function(x) abs(x-y), -1, 1)$value), -1, 1)
и получить числовое приближение. Использование кубатурного пакетаadaptIntegrate(function(x) abs(x[1] - x[2]), c(-1, -1), c(1, 1))
может быть использовано. Это просто для того, чтобы дать пару идей для числовой оценки интегралов, которые могут пригодиться, например, при тестировании, если симуляция работает правильно.Ответы:
Просто для справки, такой низкоразмерный интеграл обычно более эффективно выполняется с помощью детерминированной квадратуры вместо Монте-Карло. Монте-Карло вступает в свои права примерно в 4-6 измерениях. Конечно, сначала нужно научиться этому в малых размерах ...
источник
Вы можете сделать это в Excel с Тухи .
Войти
и нажмите кнопку запуска.
источник