close

Вход

Забыли?

вход по аккаунту

?

О некоторых стохастических и квазистохастических методах решения уравнений.

код для вставкиСкачать
УДК 519.245
Вестник СПбГУ. Сер. 1, 2008, вып. 4
С. М. Ермаков, А. И. Рукавишникова, К. А. Тимофеев
О НЕКОТОРЫХ СТОХАСТИЧЕСКИХ
И КВАЗИСТОХАСТИЧЕСКИХ МЕТОДАХ
РЕШЕНИЯ УРАВНЕНИЙ∗
В работе рассматриваются методы Монте-Карло (МК) и квази Монте-Карло (КМК)
для решения некоторых типов уравнений в случае, когда решение представлено в виде
обобщенного (в смысле главного значения) интеграла по траекториям. Для линейных
уравнений указаны методы оптимизации алгоритма. Приводится пример рандомизации
алгоритма вычисления решения сеточного аналога уравнений Навье–Стокса. Обсуждаются проблемы распараллеливания алгоритмов.
1. Введение
Получившие широкое развитие во второй половине прошлого столетия методы
Монте-Карло [1] были привлекательны простотой алгоритмов и экономичностью требований к памяти. Прогресс в развитии вычислительной техники позволяет в настоящее
время широко использовать быструю память, что привело к необходимости изучать
стохастические алгоритмы нового типа. При этом возникли специфические задачи,
связанные со свойствами параллельности алгоритмов такого типа. Применительно к
разностным методам для волнового уравнения эти проблемы впервые были подробно изучены в [2]. В этой работе для алгоритмов рекуррентного типа (аналог неявных
схем) были указаны условия стохастической устойчивости. Далее, оказалось, что рекуррентные алгоритмы чрезвычайно удобны в схеме метода квази Монте-Карло, что
было подтверждено численными экспериментами по решению систем линейных алгебраических уравнений [3, 4]. Вопросы о переносе результатов на более общий случай
операторных уравнений, уравнений содержащих нелинейность, а также оптимизации
алгоритмов остались открытыми. Они частично решаются в данной работе. Для этой
цели используются результаты из области непараметрического оценивания [5]. Намечен подход к обобщению на нелинейный случай. Для разностного аналога уравнений
Навье—Стокса [6] приведен пример конкретных вычислений, использующих предложенную авторами методику.
2. Линейный случай
Рассматривается интегральное уравнение второго рода
Z
ϕ(x) = k(x, y)ϕ(y)µ(dy) + f (x) (mod µ),
(1)
где x ∈ D ⊂ Rs , f и k — заданные функции на носителях меры µ и µ ⊗ µ соответственно, а равенство по (mod µ) обозначает его выполнение на носителе µ. Если оператор с
ядром k действует в нормированном пространстве F , F ∈ L(µ), где L(µ) — пространство µ-интегрируемых функций, и норма оператора с ядром k(x, y) меньше единицы,
∗ Работа выполнена при финансовой поддержке РФФИ (грант № 08-01-00194).
c С. М. Ермаков, А. И. Рукавишникова, К. А. Тимофеев, 2008
75
то, как известно
[1], для любой функции h ∈ F ∗ возможно представление величины
R
(h, ϕ) = h(x)ϕ(x)µ(dx) в виде интеграла по траекториям некоторой марковской цепи от специально построенной функции Ψ(ω) траекторий ω. При этом предполагается
интегрируемость Ψ, что, в свою очередь, предполагает сходимость по норме F мажорантного итерационного процесса
Z
ϕm+1 = |k(x, y)|ϕm (x)µ(dx) + |f (x)| modµ, m = 0, 1, ..., ϕ0 = f.
Интегралы такого рода могут вычисляться, в частности, с помощью МК метода, что
предполагает моделирование траектории соответствующей марковской цепи и вычисление функции Ψ на этой траектории. Погрешность при этом убывает как O(N −1/2 ),
где N — число промоделированных траекторий.
Применение детерминированного метода интегрирования КМК, сходного по своей
структуре с методом МК, сталкивается со следующей трудностью. При вычислении
интеграла по d-мерному гиперкубу от функции ограниченной вариации погрешность
имеет порядок O((lnd N )/N ). При каждом фиксированном d порядок убывания погрешности здесь асимптотически лучше, чем для метода МК, но интеграл по траекториям
имеет очень большую кратность (теоретически бесконечную) и применение методов
КМК становится проблематичным.
Поскольку для сходимости метода последовательных приближений достаточно, чтобы норма исходного оператора (с ядром k, а не |k|) была меньше единицы, условие
наложенное на |k| существенно сужает класс решаемых задач. Это вторая трудность с
которой приходится сталкиваться при использовании стохастических и квазистохастических методов.
Пути преодоления этих трудностей указаны в ряде публикаций авторов и их коллег [2–4]. В данной работе получены новые результаты по обоснованию и улучшению
предложенных ранее алгоритмов. В нелинейном случае построены и отработаны новые
алгоритмы.
В работах [2–4] в качестве альтернативы известным методам, основанным на моделировании
цепей Маркова, предлагалось последовательно оценивать приближения
R
ϕn (x) = k(x, y)ϕn−1 (y)µ(dy) + f (x). Речь идет о вычислении функции ϕn во всех точках носителя меры µ при вычисленной заранее ϕn−1 . Как обычно, при решении задач
методом МК рассматриваются «прямые» и «сопряженные» [1] оценки. Прямые предполагают оценивание ϕn (x) в заранее выбранных точках. Пусть x′ — точка, в которой
мы оцениваем ϕn . Одной из возможных оценок ϕn (x) может быть
ξ1n (y) =
k(x′ , y)ϕ
bn−1 (y)
+ f (x′ ),
pn−1 (y)
(2)
где y есть случайная величина, распределенная с плотностью pn−1 (y), а ϕ
bn−1 (y) — оценка ϕn−1 , полученная на предыдущем шаге. Эта плотность должна удовлетворять условию согласования
pn−1 (y) > 0 для y, удовлетворяющих условию k(x′ , y)ϕn−1 (y) 6= 0.
(3)
Оценка ξ1 (y) очевидным образом является несмещенной оценкой ϕn (x′ ) при условии
(3). Получив N независимых реализаций случайной величины yj вектора y, мы можем
76
оценивать ϕn (x′ ) с заданной точностью с помощью величины
N
1 X n
ξ1 (y, N ) =
ξ (yj ).
N j=1 1
(4)
При таком способе вычислений предполагается, что ϕn+1 будет оцениваться после вычисления (оценки) ϕn в некотором множестве точек x′1 , ..., x′s и указания методов интерполирования (восполнения)для вычисления ϕn+1 в любой точке носителя µ.
Другую возможность предоставляют оценки ϕn в случайно
выбранных точках.
RR
Пусть pn (x, y) есть совместное распределение x и y, так что
pn (x, y)µ(dx)µ(dy) = 1
и выполняется условие согласования
pn (x, y), если k(x, y)ϕn−1 (y) 6= 0.
(5)
Получив независимые реализации (xj , yj ) случайных векторов, распределенных с плотностью pn (x, y), мы можем получить случайный вектор
ξ2 (x, y) = f (x) +
k(xi , yi )ϕ
bn−1 (yi )
, i = 1, 2, . . .
pn (xi , yi )
(6)
Для любой функции h ∈ F ∗ очевидным образом выполняется неравенство
ZZ
E(ξ2 (xi , yi )h(xi )) = (h, f ) +
h(x)k(x, y)ϕ
bn−1 (y)µ(dx)µ(dy) = (h, ϕ
bn ).
N
N
P
Это, также, означает, что случайный вектор 1/N
ξ2 (xi , yi )
i=1
(7)
слабо сходится по
i=1
вероятности к ϕ
bn (x) в каждой точке x.
Теорема о существенной выборке ([1] стр. 138) позволяет решить вопрос об оптимальном в смысле величины дисперсии выборе pn при фиксированном ϕ
bn−1 в каждом
из двух рассмотренных случаев. Имеет место следующий результат.
Теорема 1. При фиксированном ϕ
bn−1 для каждого n = 1, 2, . . . справедливы неравенства
Z
2 Z
2
Dξ1 ≥
|k(x′ , y)ϕ
bn−1 (y)|µ(dy) −
k(x′ , y)ϕ
bn−1 (y)µ(dy) ,
(8)
Dξ2 ≥
Z Z
2 Z Z
2
|k(x, y)ϕ
bn−1 (y)|µ(dx)µ(dy) −
k(x, y)ϕ
bn−1 (y)µ(dx)µ(dy) .
(9)
Причем, знак равенства достигается в неравенстве (8) при
и в неравенстве (9) при
pn (y) = R
pn (x, y) = RR
|k(x′ , y)ϕ
bn−1 (y)|
|k(x′ , y)ϕ
bn−1 (y)|µ(dy)
|k(x, y)ϕ
bn−1 (y)|
.
|k(x, y)ϕ
bn−1 (y)|µ(dx)µ(dy)
(10)
(11)
77
При этом pn (y) есть плотность по отношению к мере µ, а pn (x, y) — по отношению
к мере µ ⊗ µ.
Доказательство. Имеем
k(x′ , y)ϕ
bn−1 (y)
k(x′ , y)ϕ
bn−1 (y)
+ f (x′ ) = D
=
Dξ1 = D
pn−1 (y)
pn−1 (y)
Z
2
Z 2 ′
k (x , y)ϕ
b2n−1 (y)
′
=
µ(dy) −
k(x , y)ϕ
bn−1 (y)µ(dy) ≥
pn−1 (y)
Z
2 Z
2
′
′
≥
|k(x , y)ϕ
bn−1 (y)|µ(dy) −
k(x , y)ϕ
bn−1 (y)µ(dy) ,
так как
Z
k 2 (x′ , y)ϕ
b2n−1 (y)
µ(dy) =
pn−1 (y)
Z
k 2 (x′ , y)ϕ2n−1 (y)
pn−1(y) µ(dy) ≥
(pn−1 (y))2
Z
2
|k(x′ , y)ϕ
bn−1 (y)
≥
pn−1 (y)µ(dy) =
pn−1 (y)
Z
2
′
=
|k(x , y)ϕ
bn−1 (y)|µ(dy) ,
(неравенство Буняковского). Отсюда следует (8). Путем вполне аналогичных выкладок
можно получить (9). Прямые выкладки также показывают, что знак равенства в (8)
и (9) достигается для плотностей pn , задаваемых выражениями (10) и (11) соответственно.
Мы рассмотрели задачу вычисления ϕ
bn при ϕ
bn−1 фиксированном. Однако, ϕ
bn отличается от истинного ϕn наличием случайной ошибки, которая накапливается в процессе
вычисления методом МК, и систематической ошибки, возникающей при восполнении
(интерполяции) значений исходной функции. На n + 1 этапе вычисления нам могут
понадобиться ее значения в точках, отличные от тех, где ϕ
bn была ранее вычислена.
Таким образом, имеем
bϕ
ϕ
bn+1 = K
bn + f + sn+1 ,
n = 0, 1, . . .
(12)
b есть реализация случайного оператора, оценивающего методом Монте-Карло
Здесь K
функцию K ϕ
bn при фиксированном n, а sn+1 — систематическая погрешность, возникающая в результате восполнения на n + 1 шаге. Предполагаем, что используются
bϕ
несмещенные оценки, так что E(K
bn )|ϕ
bn ) = K ϕ
bn .
Если Eϕ
bn = ϕ
bn + vbn , то в силу равенства ϕn+1 = Kϕn + f имеем vn+1 = Kvn + sn+1 .
Вводя обозначения v = max kvn k, s = max ksn k, получим неравенство v ≤ kKkv + s,
n
n
v≤
s
.
1 − kKk
(13)
По предположению kKk < 1, а из теории непараметрического оценивания [5] следует,
что при соответствующем методе восполнения s стремиться к нулю с увеличением числа
независимых испытаний Nn при каждом n. Порядок убывания s зависит от свойств
функции ϕ и меры µ. Как мы видим, в случае дискретной меры µ оказывается s = 0.
Далее, мы предполагаем ϕ достаточно гладкой, чтобы обеспечить порядок убывания,
−1/2
по крайней мере, s = O(Nn
).
78
Вернемся к изучению дисперсии случайной ошибки с ростом n. Введем обозначения:
εn = ϕ
bn − ϕn ,
Из (1) и (12) имеем
εn = εn − Eεn = εn − vn ,
f
b − K.
δ=K
εen+1 = K εen + vn+1 + δεn + δϕn .
(14)
(15)
Обозначим через ρn+1 (x, y) = ρ(e
εn+1 ) ковариационную функцию ошибки εen+1 . По определению
ρn+1 (x, y) = E(e
εn+1 (x), εen+1 (y)).
b и εen , полуИспользуя равенство (15) и неоднократно упоминаемую независимость K
чаем равенство
∗
ρn+1 = Kρn K T + E(δρn δ T ) + vn+1 vn+1
+ E(δϕn ϕ∗n δ T ) =
= Kρn K T + E(δρn δ T ) + O(N −1 ).
(16)
Здесь T в виде верхнего индекса у оператора обозначает оператор, сопряженный к
исходному в смысле Лагранжа.
Можно показать (как это сделано, например, в [6]) что норма линейного оператора, действующего на ρn в правой части равенства (16), не превосходит величины
kKk2 + O(N −1 ). В каждом конкретном случае возможен более детальный анализ этого оператора. Отметим только, что слагаемое E(δρn δ T ) зависит не только от числа
повторений Nn на n-м шаге, но и от дисперсии оценок, вычисляющих ϕ
bn+1 при фиксированном ϕ
bn . Это могут быть, например, оценки вида (4), (6). Вопрос об уменьшении
их дисперсий обсуждался нами выше.
Таким образом, при соответствующем выборе чисел Nn могут быть использованы
построенные нами оценки для (h, ϕn ). Применение в этой схеме методов КМК позволяет
иметь алгоритм с конструктивной размерностью d. Определенные неудобства такого
подхода состоят в том, что в схеме метода КМК мы не можем, вообще говоря, построить
доверительный интервал, оценивающий погрешность в процессе решения задачи.
3. Эволюционные уравнения с квадратичной нелинейностью
Рассмотрим уравнение
∂ϕ
= F (ϕ),
∂t
(17)
где ϕ = ϕ(t, X), X = (x1 , ..., xs ) ∈ D ⊂ Rs — искомая вектор-функция, F — заданный
оператор. Если F — дифференциальный оператор, то, используя разностную аппроксимацию на сетке (D предполагается ограниченной), приходим к системе обыкновенных
дифференциальных уравнений.
∂U (t)
= Fb (U (t)),
∂t
(18)
где U (t) = (u1 (t), ..., us (t)) — вектор неизвестных функций uj (t) = ϕ(t, Xj ), Xj — точки сетки. Полученную систему можно, при соответствующих предположениях относительно F , решать одним из известных методов (Эйлера, Рунге—Кутты). В простейшем
случае имеем схему
U (t + △t) = U (t) + △tFb (U (t)).
(19)
79
В задачах с квадратичной нелинейностью
Fb (U ) = kfj +
m
X
k=1
ajk uk +
m X
m
X
k=1 l=1
bjkl uk ul ksj=1
(20)
и при большом s вычисление вектора (20) может потребовать при каждом t очень
большого числа арифметических операций.
Возможен подход, при котором вместо Fb(U ) вычисляется его несмещенная (или
«слабо» смещенная) оценка. При этом использование оценок, аналогичных ξ2 , предполагает вычисление случайно выбранного подмножества компонент U . Если это подмножество не велико (существенно меньше s элементов), то возможно получить нужные
оценки решения с меньшим числом арифметических операций.
Заметим, что условие несмещенности делает возможным простое распараллеливание алгоритма — аналогичные вычисления ведутся на разных компьютерах с независимыми датчиками случайных чисел, результаты осредняются. Наличие квадратичного члена требует, однако, модификации оценок предыдущего раздела. Здесь можно
воспользоваться приемом, описанным в [4], и вычислить поправку, получаемую путем разложения квадратичной функции в ряд Тейлора в окрестности математического
ожидания оцениваемых величин.
Приведенные общие соображения были проверены на модельном примере.
Рассматривается разностный аналог уравнений Навье—Стокса с введенной искусственной вязкостью, описывающий движение вязкой несжимаемой жидкости:
∂v
1
1
+ (v∇)v = grad divv − vdivv + ν∆v.
∂t
ρε
2
(21)
Здесь v = v(t, x) = (v1 (t, x), v2 (t, x), v3 (t, x)) — векторное поле скоростей в трехмерном
пространстве (x = (x1 , x2 , x3 ) ∈ R3 ). Величины ρ и ν являются скалярными параметрами, определяющими плотность и вязкость жидкости соответственно. Коэффициент
ε — параметр искусственной вязкости.
Приведенное уравнение использовалось для расчета движения жидкости в кубической каверне с подвижной боковой стенкой: x ∈ D, где D = [0, 1]3 .
В начальный момент времени (t = 0) жидкость полагалась неподвижной:
v(0, x) = 0.
На границах задавалось условие прилипания, а именно:
(0, 1 − 1/(1 − t5 ), 0), x1 = 0;
v|∂D (x, t) =
(0, 0, 0),
иначе.
(22)
(23)
Пространственная сетка содержала l × l × l точек — одинаковое число по каждой переменной. Использовалась стандартная аппроксимация производных с точностью до
h2 , h = 1/l. Полагалось ε = 0.5, ρ = 1, ν в разных примерах меняется от 0.0001 до 0.25.
Вычислялись оценки решения в момент времени t = 1 и полагалось △t = 1/N .
Обычные детерминированные вычисления по явной схеме (19) налагают соответствующие условия на соотношения h и △t вида △t ≤ ch2 , c — некоторая константа, обеспечивающая устойчивость относительно ошибок округления. Во всех случаях эти условия
были выполнены. Кроме того, рандомизация требует выполнения условий стохастической устойчивости. Они уменьшают величину константы c.
80
В случае использования детерминистического метода Эйлера необходимо будет провести 3 · (l − 2)3 N расчетов отдельных компонент функции f . Если использовать при
расчетах рандомизацию, то для фиксированного числа усреднений m оценки Fb на
каждом шаге получим, что для расчета оценки решения к моменту времени 1 потребуется mN расчетов компонент Fb. При этом мы предполагаем, что величина m
должна быть достаточной для обеспечения стохастической устойчивости и, следовательно, распараллеливания алгоритма. Как показывают численные исследования, в
данном примере наименьшее значение параметра m, при котором сохраняется стохастическая устойчивость, убывает с уменьшением △t (вплоть до 1!). Это сближает
описанную методику с методами, использующими аппарат стохастических дифференциальных уравнений. Таким образом, оказывается, что существует t0 такая, что для
всех 0 < △t < t0 рандомизированный метод Эйлера быстрее детерминистического в
t0 /△t раз.
Для ряда параметров l и △t приведем наименьшие значения m, при которых сохраняется стохастическая устойчивость, а также покажем, во сколько раз уменьшается
время расчета компонент вектора Fb при использовании рандомизированного метода
Эйлера, по сравнению детерминистическим (см. табл.).
l
10
10
10
10
20
△t
0.001
0.0005
0.0001
0.00005
0.0001
наименьшее m
461
183
19
1
1731
3(l − 2)3 /m - преимущество ранд. метода
3.33
8.39
80.8
1536
10.12
Из таблицы видно, что скорость расчета оценок при помощи рандомизированного
метода Эйлера может оказаться существенно выше, чем скорость расчета при помощи детерминистического метода Эйлера. Однако при расчетах рандомизированным
методом Эйлера возникает дополнительная случайная погрешность. Влияние случайной погрешности может быть снижено за счет усреднения нескольких реализаций
оценки.
Интерес представляет также поведение погрешности оценки, получаемой в момент
времени t путем усреднения нескольких независимых оценок решения, полученных на
разных компьютерах. Эксперименты показывают, что для достаточно большого диапазона числа усредняемых оценок N (при расчетах N бралось от 1 до 512) норма
отклонения усредненной оценки √
решения от оценки, получаемой детерминистическим
методом Эйлера, убывает как c/ N , где c — некоторая константа.
Из этого можно сделать вывод о целесообразности параллельного проведения расчетов на нескольких независимых вычислителях с дальнейшим усреднением результатов.
Ниже, на рис. 1 в качестве иллюстрации приведен один из результатов расчета стохастическими методами при t = 1, l = 30, △t = 0.0001, m = 25 000, ν = 0.1 и ν = 0.0001
соответственно.
На следующих графиках приведены значения среднеквадратических отклонений
компонент оценок v1 и v2 решения в плоскости Oxy при z = 0.5, домноженные на
106 , а также эти же значения среднеквадратических отклонений, деленные на модули
математических ожиданий соответствующих компонент (относительная погрешность),
рассчитанные для t = 0.12, l = 10, △t = 0.1225, m = 1200, ν = 0.25.
81
Рис. 1. Линии тока в плоскости Oxy при z = 0.5 для ν = 0.1 и ν = 0.001.
Рис. 2. Среднеквадратические отклонения оценок компонент v1 и v2
в плоскости Oxy при z = 0.5, домноженные на 106 .
Рис. 3. Относительные погрешности оценок компонент v1 и v2
в плоскости Oxy при z = 0.5.
82
Литература
1. Ермаков С. М. Метод Монте-Карло и смежные вопросы. М.: Наука, 1975.
2. Ermakov S. M., Wagner W. Monte Carlo difference schemes for the wave equation // Monte
Carlo Methods and Appl. 2002. Vol. 8, N 1. P. 1–29.
3. Ermakov S. M., Rukavishnikova A. I. Quasi Monte-Carlo Algorithms for Solving Linear Algebraic Equation // MC Methods and Applications. 2006. Vol. 12, N 5. P. 363–384.
4. Ermakov S. M. MCQMC algorithms for solving some classes of equations // Monte-Carlo &
Quasi Monte-Carlo Methods / Springer 2007. P. 23–33.
5. Devroye L. Nonparametric density estimation (five lectures) // Principles of Nonparametric
Learning. Wien: Springer-Verlag, 2002. P. 211–270.
6. Адамов А. В., Ермаков С. М. Стохастическая устойчивость метода Монте-Карло (случай
операторов) // Вестник СПбГУ. 2004. Сер. 1. Вып. 2. С. 3–8.
7. Рауч П. Вычислительная гидродинамика. М.: Мир, 1980. С. 612.
Статья поступила в редакцию 18 мая 2008 г.
83
Документ
Категория
Без категории
Просмотров
4
Размер файла
311 Кб
Теги
решение, уравнения, стохастических, некоторые, квазистохастических, метода
1/--страниц
Пожаловаться на содержимое документа