Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Методы Монте-Карло для параллельных вычислений. Учебное пособие

.pdf
Скачиваний:
0
Добавлен:
07.09.2026
Размер:
2 Мб
Скачать
☆
предполагается выполнение этого определения для всех значений x
(1)
x
, . . . , x
(i)
, при которых вероятность события
{X
(0)
= x
(0)
, X
(1)
= x
(1)
, . . . , X
(i)
= x
(i)
}
(0)
,
положительная. Для векторов X делением условная функция распределения понимается так, как в раз­деле 3.3. При удачном выборе последовательности {X будут иметь место следующие предельные соотношения: распределение вектора X
(i)
при i → ∞ будет сходиться к распределению вектора X и
(i)
, i = 0, 1, . . . с непрерывным распре-
(i)
; i = 0, 1, . . .}
для «хорошей» функции f : Rn→ R суммы
i
X
1
i + 1
j=0
f(X
(i)
)
будут сходиться к величине M f(X ), например, в смысле сходимости по вероятности:
lim
i→∞
n
P
1
i + 1
i
X
j=0
f(X
(i)
) −M f (X)
 
> εo= 0
для любого ε > 0.
Введем функции
ˆpk(xk; x1, x2, . . . , x
p(x1, x2, . . . , x
P
=
p(x1, x2, . . . , x
y
k−1
, x
k−1
k+1
, xk, x
k−1
, . . . , xn) =
, . . . , xn)
k+1
, y, x
, . . . , xn)
k+1
, k = 1, 2, . . . , n
в случае дискретного распределения вероятностей p, либо
ˆpk(xk; x1, x2, . . . , x
p(x1, x2, . . . , x
R
=
∞
p(x1, x2, . . . , x
−∞
k−1
k−1
, x
k+1
, xk, x
, y, x
k−1
, . . . , xn) =
, . . . , xn)
k+1
, . . . , xn) dy
k+1
, k = 1, 2, . . . , n
в случае непрерывной плотности распределения p. Так, функции ˆp определяют условное распределение компоненты Xkпри фиксирован­ных значениях остальных компонент X1, X2, . . . , X вектора X. Определим теперь следующую последовательность случай­ных векторов. Выберем произвольно вектор X
(0)
k−1
, X
k+1
, . . . , X
. На (i + 1)-м шаге,
71
k
n
(0)
когда получены значения векторов X
, X
(1)
, . . . , X
декс k ∈ {1, 2, . . . , n} и сгенерируем k-ю компоненту вектора X
(i)
, выберем ин-
(i+1) k
из условного распределения
(i)
ˆpk(xk; X
(i)
, X
1
, . . . , X
2
Для остальных компонент определим X
(i) k−1
, X
(i+1) l
(i) k+1
= X
, . . . , X
(i)
).
n
(i)
, l 6= k. Таким обра-
l
зом, на каждом «шаге» моделирования только одна компонента вектора совершает движение.
В зависимости от того, как мы выбираем на очередном шаге ин­декс k элемента вектора, мы получаем последовательности векторов с различными свойствами. При циклическом порядке индекс k последо­вательно принимает значения 1, 2, . . . , n, 1 и так далее. При случайном порядке индекс k с равной вероятностью принимает одно из возмож- ных значений 1, 2, .. . , n на каждом шаге независимо от предыдущих шагов. В первом случае последовательность {X
(i)
; i = 0, 1, . . .} об- разует неоднородную (по времени) цепь Маркова, во втором случае — однородную цепь Маркова.
Теорема 3.1. Стационарное распределение определенной выше
цепи {X
(i)
; i = 0, 1, . . .} совпадает с p(x1, x2, . . . , xn).
Доказательство. Определенности ради будем считать, что плот-
ность p(x1, x2, . . . , xn) задает дискретное n-мерное распределение ве­роятностей. Рассмотрим циклический порядок выбора индекса. Пусть вектор X
ление вектора X
(0)
имеет распределение p(x1, x2, . . . , xn). Найдем распреде-
(1)
. По формуле полной вероятности с учетом описан-
ного алгоритма моделирования имеем:
P({X
(1)
= x1, X
1
=
× P({X
X
y
=
(1)
= x2, . . . , X
2
(0)
P({X
1
(1)
= x1}|{X
1
= y, X
X
p(y, x2, . . . , xn)
y
(1)
= xn}) =
n
(0)
= x2, . . . , X
2
(0)
= x2, . . . , X
2
p(x1, x2, . . . , xn)
P
p(z, x2, . . . , xn)
z
(0)
= xn})×
n
(0)
= xn}) =
n
= p(x1, x2, . . . , xn).
Аналогичные вычисления для последующих шагов убеждают, что век­торы X
(2)
(3)
, X
, . . . также имеют распределение p.
72
При случайном порядке выбора индекса будем иметь:
(1)
P({X
1
=
= x1, X
n
X
1
n
k=1
× P({X
P
×
Для распределения векторов X
(1) 2
X
P({X
y
(1)
= xk}|{X
k
n
X
1
=
n
k=1
p(x1, . . . , x
z
= x2, . . . , X
(0)
= x1, . . . , X
1
(0) 1
(1)
n
= x1, . . . , X
X
p(x1, . . . , x
y
k−1
p(x1, x2, . . . , xn)
, z, x
k−1
(2)
k+1
, X
= xn}) =
(0)
= y, . . . , X
k
(0)
= y, X
k
, y, x
k+1
, . . . , xn)
(3)
, . . . вычисления аналогичны.
(0)
= xn})×
n
(0)
= xn}) =
n
, . . . , xn)×
= p(x1, x2, . . . , xn).
В случае непрерывного распределения с плотностью p необходимо вместо вероятностей рассматривать n-мерные плотности соответствую­щих случайных векторов и операции суммирования по y, z заменить операциями интегрирования.
Метод цепей Маркова часто применяется в ситуации, когда раз­мерность n вектора X велика и когда функция p(x1, x2, . . . , xn) из­вестна с точностью до нормирующего множителя, то есть имеет вид
p(x1, x2, . . . , xn) = C · ˜p(x1, x2, . . . , xn)
с неотрицательной функцией ˜p(x1, x2, . . . , xn). Действительно, в этом случае имеем, например, для непрерывного случайного вектора
ˆpk(xk; x1, x2, . . . , x
p(x1, x2, . . . , x
R
=
∞
p(x1, x2, . . . , x
−∞
C ˜p(x1, x2, . . . , x
R
=
∞
C ˜p(x1, x2, . . . , x
−∞
, x
k−1
k+1
˜p(x1, x2, . . . , x
R
=
∞
˜p(x1, x2, . . . , x
−∞
, . . . , xn) =
, xk, x
k−1
, y, x
k−1
, xk, x
k−1
, y, x
k−1
, . . . , xn)
k+1
, . . . , xn) dy
k+1
, . . . , xn)
k+1
, . . . , xn) dy
k+1
, xk, x
k−1
, y, x
k−1
, . . . , xn)
k+1
, . . . , xn) dy
k+1
=
=
.
Существуют также другие алгоритмы генерирования многомер­ных случайных векторов с помощью цепей Маркова. Читатель может обратиться, в частности, к работам [36, 41], указанным в списке лите­ратуры.
Глава 4. Приближенное вычисление определенных интегралов методом Монте-Карло
4.1. Геометрический метод Монте-Карло
Пусть задана ограниченная область D ⊂ Rnи неотрицательная ограниченная интегрируемая функция f : D → R, f 6 M. Рассмотрим вопрос о приближенном вычислении интеграла
Z
J =
В анализе показывается, что интеграл J имеет следующий геометриче­ский смысл: (n + 1)-мерный объем области, ограниченной гиперплоско­стью y = 0 и графиком функции y = f (x). Рассмотрим эксперимент, состоящий в выборе наудачу точки Q в области
¯
D = {(x1, x2, . . . , xn, y): (x1, x2, . . . , xn) ∈ D, 0 6 y 6 M }.
Тогда вероятность P({Q ∈¯Df}) точке Q попасть в подмножество
¯
Df= {(x1, x2, . . . , xn, y): (x1, x2, . . . , xn) ∈ D,
равна, из геометрического определения вероятности,
f(x) dx. (4.1)
D
0 6 y 6 f (x1, x2, . . . , xn)}
|¯Df|
p =
|¯D|
,
где |·| обозначает (m +1)-мерный объем области, |¯Df| = J , |¯D| = M ·|D|. Отсюда
J = pM|D|.
Пусть в области¯D выбраны случайным образом точки Q1, Q2, . . . , QN. Рассмотрим случайную величину
N
X
X =
I({Qi∈¯Df}),
i=1
считающую число точек, попавших в область¯Df. Известно, что слу­чайная величина X имеет биномиальное распределение вероятностей с
74
параметрами p, N:
P({X = k}) =
N
k
pk(1 −p)
N−k
, k = 0, 1, . . . , N.
Относительная частотаˆp = N−1X обладает следующими свойства­ми: 1) математическое ожидание Mˆp равно p; 2) при N → ∞ распре­деление величины√N(ˆp − p)(pp(1 −p))−1стремится к стандартному нормальному распределению с параметрами a = 0, σ = 1; 3) для любого положительного ε имеет место предельное соотношение
lim
P({|ˆp − p| > ε}) = 0,
N→∞
то есть относительная частота является состоятельной оценкой для ве­роятности p. Свойство 3 означает, что при оценке величины p (а значит, и интеграла J) по достаточно большому числу пробных точек Q мы практически не будем наблюдать больших погрешностей. Свойство 2 позволяет построить двухсторонний доверительный интервал для ве­личины p. Напомним здесь определение двухстороннего доверительного интервала. Такие случайные величины p1, p2, что
P({p1< p < p2}) = γ,
задают доверительный интервал (p1, p2) для величины p с надежно­стью (доверительной вероятностью) γ. Типичные значения надежности: 0,9, 0,95, 0,99. Другими словами, доверительный интервал с заданной вероятностью γ накрывает истинное значение величины p. Естественно требовать, чтобы границы доверительного интервала были функциями от результатов испытаний X . Выберем число uγиз условия
2Φ(uγ) −1 = γ,
например, u
≈ 1,65, u
0,9
0,95
≈ 1,96, u
≈ 2,58. Тогда с вероятностью,
0,99
близкой к γ, будет выполняться неравенство
s
|ˆp − p|
N
p(1 −p)
< uγ,
отсюда
q
ˆ
pN +
u
2
γ
2
− u
(N + u
Nˆp(1 −ˆp) +
γ
2
)
γ
2
u
γ
2
< p <
ˆ
pN +
75
q
2
u
γ
+ u
2
Nˆp(1 −ˆp) +
γ
(N + u
2
)
γ
2
u
γ
2
.
Если N достаточно велико и членами порядка u
2
N−1можно прене-
γ
бречь, то доверительные границы задаются более короткой приближен­ной формулой
ˆ
p − u
r
γ
ˆ
p(1 −ˆp)
N
< p <ˆp + u
r
γ
ˆ
p(1 −ˆp)
N
.
Таким образом, для уменьшения погрешности на порядок (т. е. для сужения доверительного интервала в 10 раз) надо увеличивать число N испытаний в сто раз.
Аналогичный метод можно применять для оценки величины ин­теграла
J =
Z
f(x)p(x) dx,
D
в котором функция f удовлетворяет приведенным выше условиям, а функция p задает плотность непрерывного распределения вероятностей в области D (не обязательно ограниченной):
Z
p > 0,
p(x) dx = 1.
D
Для этого необходимо выбирать точку в области¯D точку Q с коорди­натами (X1, X2, . . . , Xn, Y ) следующим образом: пусть случайный вектор (X1, X2, . . . , Xn) не зависит от случайной величины Y и имеет распределения вероятностей с плотностью p, а случайная величина Y имеет равномерное распределение в интервале (0, M). Тогда плотность распределения вектора (X1, X2, . . . , Xn, Y ) равна
¯p(x, y) = M−1p(x) при (x, y) ∈¯D,
и вероятность p попадания точки Q в множество¯Dfравна
(
f(x)
Z
Z
p(x)
dy)dx =
M
0
D
P({Y < f(X )}) =
Z
¯p(x, y) dx dy =
¯
D
f
откуда J = pM . Заметим, что здесь «мера» области D равна 1.
76
J
M
,
4.2. Метод математического ожидания
Пусть требуется вычислить интеграл
Z
J =
f(x)p(x) dx (4.2)
D
по ограниченной области D ∈ Rnот произвольной интегрируемой функ­ции f , где
Z
p > 0,
p(x) dx = 1
D
и
Z
|f(x)|p(x) dx < ∞.
D
Введем непрерывный случайный вектор X = (X1, X2, . . . , Xn) с плотностью распределения вероятностей p, так что
Z
P({X ∈ A}) =
p(x) dx
A
для любого «хорошего» множества A ⊂ Rn. Тогда, по свойству матема­тического ожидания функции от случайного вектора,
J = M f (X).
(1)
Пусть случайные векторы X
(2)
, X
, .. . независимы и распределены одинаково с вектором X , другими словами, являются его независимыми копиями. Тогда случайные величины
Yi= f(X
(i)
), i = 1, 2, . . .
также независимы и одинаково распределены, причем
M Yi= M f(X ).
Рассмотрим среднее арифметическое
N
X
JN=
N
1
i=1
f(X
(i)
). (4.3)
77
Оно является несмещенной оценкой для J: M JN= J. На основании закона больших чисел А.Я. Хинчина для независимых одинаково рас­пределенных величин, для любого ε > 0
lim
N→∞

P
N
X
1
 
N
Yi− J
i=1
  
> ε= 0.
Поэтому для приближенной оценки величины интеграла J по N наблю­дениям X
(1)
, X
(2)
, .. . , X
(N)
случайной величины X можно исполь­зовать наблюдаемое значение JN. Способ построения доверительных интервалов для величины J существенно зависит от конечности или бесконечности величины дисперсии
Z
D f(X ) = M(f (X) −J )2=
(f(x))2p(x) dx − J2.
D
Рассмотрим оба варианта.
Случай 1. Предположим, что σ2= D f(X ) < ∞. На основании центральной предельной теоремы для независимых одинаково распре­деленных величин, распределение величины
Z =
JN− J
√
σ
N
близко к стандартному нормальному распределению. Поэтому дове­рительный интервал, соответствующий доверительной вероятности γ, имеет вид
JN−
uγσ
√
< J < JN+
N
uγσ
√
. (4.4)
N
На практике величина среднеквадратического отклонения σ не извест­на. Поэтому применяют следующую процедуру. Все N наблюдений раз­бивают на m > 1 групп по N1 1 наблюдений и находят средние по группам:
Z1=
N
1
1
N
X
i=1
Zm=
1
Yi, Z2=
1
N
1
N
X
i=1
1
Y
78
N
1
X
1
N
1
i=1
i+(m−1)N
Y
, . . . ,
i+N
1
.
1
Величины Z1, Z2, .. . , Zmимеют приближенно нормальное распреде­ление с математическим ожиданием J и дисперсией N
Z =
m
m
X
1
j=1
Zj, S2=
m
X
1
j=1
m
(Zj− Z)2.
−1
σ2. Положим
1
Тогда распределение величины
t =
Z −J
√
m − 1
S
близко к распределению Стьюдента с (m − 1) степенью свободы, плот­ность распределения которого имеет вид
s
m−1
(x) =
r
Γ
2
m−1
Γ
1 +
2
2
x
m − 1
−m/2
, −∞ < x < ∞.
Выберем (из таблиц распределения Стьюдента) значение tγиз условия:
t
γ =
−t
γ
Z
s
(x) dx ≈ P|Z −J | < t
m−1
γ
√
γ
S
m − 1

.
Тогда доверительный интервал для J имеет вид:
Z −
tγS
√
m − 1
< J < Z +
tγS
√
m − 1
.
Случай 2. Пусть D f(X ) = ∞. В этом случае закон больших чисел все еще действует, поэтому типичным должно быть приближение оцен­ки JNк значению J. Однако построение доверительных интервалов в этом случае гораздо более трудно. Ранее мы использовали тот факт, что распределение вероятностей величины (JN−J)√N при n → ∞ сходится к стандартному нормальному распределению, хорошо изученному и та­булированному. В случае σ2= ∞ вопрос о предельном распределении решается гораздо более разнообразно. Во-первых, вместо нормировки величиной N
−1/2
может потребоваться другая нормировка. Во-вторых, возникающие при переходе к пределу распределения вероятностей мо­гут оказаться крайне трудными в вычислительном плане при получении аналогов величин uγ, tγ. Как правило поэтому случая σ2= ∞ старают- ся избегать.
79
В дальнейшем мы будет полагать всегда конечность дисперсии
D f(X ). Однако покажем здесь еще один путь получения доверитель- ных интервалов для величины J при вычислении простых интегралов вида
J =
∞
Z
f(x)p(x) dx.
−∞
Погрешность от использования приближенной формулы (4.3) равна
∞
RN[f] =
Z
f(x)p(x) dx −
−∞
N
N
X
1
i=1
f(X
(i)
)
и также является случайной величиной. Предполагая, что функция f обладает ограниченной вариацией, можем записать:
∞
Z
f(x)p(x) dx −
−∞
N
N
X
1
i=1
f(X
(i)
) =
∞
Z
f(x) d(F (x) −FN(x)),
−∞
где
F (x) =
Z
−∞
x
p(y) dy
есть функция распределения случайной величины X, FN— ее выбо­рочная функция распределения,
FN(u) =
1
N({i: 1 6 i 6 N , X
N
(i)
< u}),
и справа стоит интеграл Стильтьеса. Если f имеет производную f0, то после интегрирования по частям получаем оценку
∞
Z
Величина
RN[f] 6 sup
−∞<x<∞
|FN(x) −F (x)|
∞
Z
|f0(x)|dx = V
−∞
∞
−∞
|f0(x)|dx.
−∞
[f]
80
Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]