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

книги из ГПНТБ / Соболь И.М. Численные методы Монте-Карло

.pdf
Скачиваний:
24
Добавлен:
24.10.2023
Размер:
9.56 Mб
Скачать

48

ПРЕОБРАЗОВАНИЯ СЛУЧАЙНЫХ ВЕЛИЧИН

[ГЛ. 2

Yi, Y2- Сперва

по числу

уі (методом

п.

1.2.1)

определяем, наступило

ли событие А.

Если А

наступило,

то,

зная

условную

вероятность

Р{В/А} = РАВ/РА, можно по числу у2 определить, наступило ли со­

бытие В: условием наступления В служит выполнение неравенства Y2<P{ß/-4). Если же событие А не наступило, то наступление В при­

дется разыгрывать с помощью условии вероятности Р{В/Л), которая равна Р {В/А} = (рв — РАВ)/(1 — РА).

1.3. Моделирование непрерывных случайных величин. Предположим, что случайная величина | определена в интервале и имеет плотность р(.ѵ) > 0 при a<Cx<£b. Обозначим через F (х) функцию распределе­ ния I, которая при a<£x<£b равна

 

F (л-) = ) р (и) du.

 

 

 

а

 

Случай а = — со и

(пли)

Ь = оо не исключается.

Т е о р е м а 2.

Случайная величина |, удовлетворяю­

щая уравнению.

 

 

 

 

 

F (ё)

Н)

имеет плотность распределения р(х).

F(х) строго

Д о к а з а т е л ь с т в о .

Так как функция

возрастает в интервале

(а, Ь) от F( a) = 0

до F (Ь) = 1,

то уравнение (4) имеет единственный корень при каждом 7 ірнс. 15). При этом равны

 

/ -

 

 

вероятности

 

 

 

 

 

P{.v<|<A '+ßr.v} =

 

F(x<dx) -

 

 

= Р{/7(л') < 7<Т(.ѵѵ)}.

 

 

И так как случайная вели­

 

 

 

 

 

 

 

 

чина у равномерно распре­

 

 

 

 

делена в интервале (0, 1),то

и

о

х£ x>âx

X

Р { .у < !< х + dx) =

 

 

 

 

 

— F(x-\-dx)—F(x) — p(x)dx,

В тех

случаях, когда

 

что и требовалось доказать.

уравнение (4) аналитически

разрешимо относительно

 

получается

явная формула

! = G ( 7)

для

разыгрывания

случайной

величины

где

§ 1]

МЕТОД ОБРАТНЫХ ФУНКЦИИ

49

G( y ) — обратная-

функция по отношению

к y = F ( x )'.

В других случаях

можно уравнение (4) решать числен­

но. Если объем накопителя позволяет, то удобно соста­ вить таблицу функции G{y), 0< г / < 1, и по ней нахо­ дить значения £. Иногда удобно использовать таблицу функции F(x), a<.x<_b, п находить значения | обрат­ ной интерполяцией, О некоторых приемах составления таблиц см. [8, 9, 90].

П р и мер. Э к с п о н е н ц и а л ь н а я с л у ч а й н а я в е л ц- ч и н а £ определена при .ѵ0< .ѵ < о о с плотностью

 

р (.«) =

<іе-а{х~ Ха).

 

Так как

 

 

 

 

F (х) = [

du = 1 - е—°(*—Ч

 

 

Хп

 

 

то уравнение (4) примет вид

 

 

 

1—

= Y.

 

Отсюда получаем явное выражение для расчета §

 

 

£=

(І/а)1п(1—у).

(5)

1.4.

Метод обратных функций. Теоремы

1 и 2 пре

ставляют собой частные случаи общего метода, который естественно назвать методом обратных функций (наряду с названием inverse functions method встречается также direct method).

Рассмотрим произвольную случайную величину | с функцией распределения F(x) = Р{£<-ѵ} (рис. 16, а). Обратную по отношению к F (х) функцию G(y) опреде­ лим следующим образом. Во-первых, дополним график

функции

y = F(x)

вертикальными отрезками

в

точках

разрыва

до непрерывной линии

y = F0 (x)

(рис.

16,

б);

функция

y = F 0 {x),

вообще

говоря, неоднозначна.

Эту

же линию можно записать уравнением вида

x = G 0 (y).

где функция G0(у) опять-таки

не

обязана

быть

одно­

значной:

интервалам

постоянства

F0 (x)

соответствуют

вертикальные

отрезки

G0 (y)

и

наоборот.

Положим

G (у) = G0 (y)

в точках

непрерывности и G(y) — G(y-\-0)

в точках разрыва (рис.

16, в).

 

 

 

 

 

 

Построенная таким образом однозначная функция

G(y) не убывает при 0 < 1

и непрерывна

справа во

4 И, М. Соболь

£0

ПРЕОБРАЗОВАНИЯ СЛУЧАЙНЫХ ВЕЛИЧИН

 

[ГЛ.

2

всех

точках*).

Функции

F(x)

и G(y)

связаны

следую­

щим свойством: G(y)<.x тогда

и только тогда,

когда

y<F( x) . Для доказательства

этого свойства достаточно

проверить, что

каждое

из

двух

неравенств

G(y)<.x

п

 

 

 

 

 

y <F( x)

 

означает,

что

 

 

 

 

 

точка (G(y), y) располо­

 

 

 

 

 

жена

на

линии

y = F 0 (x)

 

 

 

 

 

одновременно

и

левее

и

 

 

 

 

 

ниже

точки

(х,

F(x))

 

 

 

 

 

(рпс. 17).

 

3.

Случай­

 

 

 

 

 

 

Т е о р е м а

 

 

 

 

 

ная величина

 

 

 

 

 

 

 

 

 

 

 

 

 

:С(Ч)

 

(б)

 

 

 

 

 

имеет функцию распреде­

 

 

 

 

 

ления F(x).

 

 

 

 

 

 

 

 

 

 

Для

 

д о к а з а т е л ь ­

 

 

 

 

 

с т в а

теоремы нужно вы­

 

 

 

 

 

числить функцию распре­

 

 

 

 

 

деления

случайной

вели­

 

 

 

 

 

чины

 

§,

определенной

 

 

 

 

 

формулой

(6):

 

 

 

 

 

 

 

 

 

 

f*C.v} = P{G(T)< *} =

 

 

 

 

 

 

Р{|-

 

 

 

 

 

 

 

 

 

 

 

 

 

= Pft </=■(*) }=F(.v).

 

 

 

 

 

 

То,

что теорема

1 пре­

 

 

 

 

 

доставляет собой частный

 

 

 

 

 

случай

 

теоремы

3,

видно

 

 

 

 

 

из сравнения рпс. 18, па

 

 

 

 

 

котором изображена функ­

 

 

 

 

 

ция .x = G 0 {y),

соответ­

 

 

 

 

 

ствующая дискретной слу­

 

 

 

 

 

чайной

величине, с рис. 14:

 

 

 

 

 

если чеДі на рис. 14, то

 

 

 

 

 

G0('Y)=xi

на

 

рис. 18.

функция G(y)

 

 

 

В

условиях

теоремы

2

совпадает с обычной обратной функцией

к F(x) и уравнение (6) равносильно

(4).

 

 

 

 

 

*) Аналитическое определение: функция G(y) равна нижней гра-.

ни множества чисел х, для которых y<F {x ),

т. е.

 

 

 

 

 

 

 

G (у)

=

inf

X.

 

 

 

 

 

 

 

[x\y<t\x)}

§ 11

МЕТОД ОБРАТНЫХ ФУНКЦИИ

51

Заметим, что так как случайная величина 1—7 име­

ет то же

распределение, что

то в формулах (2),

(4),

(6) можно вместо у написать 1—у. Следовательно, ука­ занные способы моделирования ие единственно возмож­ ные. Иногда замена у на 1—у несколько упрощает фор­ мулы расчета. Например, вместо формулы (5) можно

использовать формулу

 

!=л'о— (і/«)1п у.

(7)

Итак, метод обратных функции позволяет записать формулы для моделирования любой случайной величи­ ны £. Но нередко этот метод приводит к сложным или

просто неудобным алгоритмам. Например, для того чтобы вычислять значения гауссовской (нормальной) случайной величины £ с параметрами (0; 1), приходит­ ся решать уравнение

&*

[ e ~ r / 2 d t = V 2 jt у .

СО

Втаких случаях обычно прибегают к помощи других методов моделирования, связанных с другими преобра­ зованиями случайных чисел у.

1.5.Преобразования вида %=g(y). Попытаемся на

ти всевозможные функции g(y) такие, что случайная ве­ личина g(y) имеет функцию распределения F(x) . Для это­ го необходимо и достаточно, чтобы Р {g-(т) <-v} — F(x).

Введем единичную функцию

е

1 0

при

г «

0,

 

I 1

при

2 >

Q.

4'

52 ПРЕОБРАЗОВАНИЯ СЛУЧАЙНЫХ ВЕЛИЧИН

Так как плотность рѵ(у) =

1 при 0 < г/< 1 , го

Р {g (У) < х} =

Г

1

j

Рѵ ІУ) dy = \e(x — g (у)) dy.

 

{!/!£('/)<*}

о

Таким образом, получаем уравнение, которому должна' удовлетворять функция g(y):

1

 

\е{х — g{y))dy = F (х).

(8)

о

 

Общее решение уравнения (8), по-внднмому, неизвестно*). Од­ нако легко указать частные классы функций g(y), в которых реше­

ния существуют. Для простоты ограничимся случаем, когда модели­ руемая величина £ принимает значения в интервале а<.х< Ь н име­ ет плотность вероятностей р(х) > 0 при а < .ѵ < 6 .

Пусть g{y)

строго возрастает

при 0 < ( / < 1

и g ( 0 ) = a ,

g { \) = b .

Тогда из рис.

19 видно,

что

e{x—g{y)) = l

при

0 < y < h ( x ) , где

Іі(х)— функция, обратная

по отношению к g{y).

Из (8)

вытекает,

что

 

 

 

 

 

 

 

 

F { x ) =

Л (.ѵ)

dy = h (x).

 

 

 

 

[

 

 

(9)

ö

Переходя к обратным функциям, запишем, что g(y) равна G(y) — обратной функции к F(x). Мы пришли, таким образом, к методу об­

ратных функций |= G ( y).

*) Если моделируемая случайная величина | непрерывна, то плотность ее p{x)=F'{x). Дифференцируя (8) с учетом того, что

e '(z )= ö (z ) — дельта-функция Дирака, получим вместо (8) уравнение

( б ( x — g (y ))d y = р(х).

о

§ 2]

МОДЕЛИРОВАНИЕ МНОГОМЕРНЫХ ВЕЛИЧИН

 

 

Пусть теперь

g(y)

строго

убывает при 0 < ( / < 1 п

g(0)=b,

g { \) = a . Тогда из рис.

20 видно, что е(х—g(y)) = 1 при Іі(х) < ! / < 1 ,

и из

(8) вытекает,

что

 

 

 

 

 

F(x) = I

d y = 1 — h(x).

( 10)

 

 

 

Ңх)

 

 

Сделав замену переменной у = Іі(х), получим соотношение F(g(y)) =

=

1 — //, откуда g ( y ) = G ( \ у).

Таким

образом,

в этом

случае

s =

G( l —у), и мы снова пришли к методу обратных функций с заме­

ной у на 1—у.

 

 

 

 

 

 

 

Эти же решения уравнения (8) можно получить для любой слу­

чайной величины, если предположить,

что g(y) обладает

свойствами

обратных функций G(y) в смысле

п.

1.4.

Помимо

этих

двух

моно­

тонных решений, существует бесконечное количество немонотонных решений. Однако используются они сравнительно редко. Пожалуй, единственный общий метод, основанный на использовании немоно­

тонных функций

g(y), это модифицированный метод суперпозиции

Г. А. Михайлова,

изложенный в п. 3.3.3.

Прежде чем перейти к преобразованиям более обще­ го вида, рассмотрим основные методы моделирования многомерных случайных величин.

§2. Моделирование многомерных случайных величин

2.1.Моделирование «-мерной случайной точки с н зависимыми координатами. Если координаты «-мерной

случайной величины

Q=(£i, . . . ,

|„) независимы, то

функция распределения

 

 

Fq{Xu . . . .

xn) = F 1 (xi)... Fn(x n),

 

где Fіі) — функция

распределения

величины

Есте-

ствёпно ожидать, что в этом случае можно моделиро­

вать каждую величину

независимо:

 

где уі, . . . ,

— независимые случайные числа.

опре­

Действительно, так

как ^ независимы, то и

деленные формулами (11), независимы. Поэтому их совместная функция распределения равна произведению

/1

П

= П Fi (Xi) = Fq (xl ----- --

xn) .

54

 

 

ПРЕОБРАЗОВАНИЯ СЛУЧАЙНЫХ ВЕЛИЧИН

 

 

|ГЛ

2

П р и м е р . С л у ч а й н а я

т о ч к а

Q с

декартовыми

координа­

тами

 

 

 

 

р а в н о м е р н о

р а с п р е д е л е н а

в

/(-м ер ­

н ом

п а р а л л е л е п и п е д е

П =

 

 

 

( = 1 ,

2, . . . ,

/(}

(рис.

21 для /( =

2).

 

 

 

 

 

 

 

 

 

 

 

 

Плотность

вероятностей

точки Q постоянна в П:

 

 

 

 

 

 

 

Pq (x!•■ •>*,,) =

с

при (a-j ,

х(|)

е П ,

 

 

 

 

 

 

О

при

(А-!............А-„)

П,

 

 

 

 

где 1 /с =

п

(6г- — яЛ — объем П («-мерный объем). Интегрируя

П

Pq по

 

/—I 4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

всем переменным,

кроме

 

легко получить,

что плотность £/

равна

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

^

{

0

 

при а-,-(£(аг,

ft,.).

 

 

 

 

Следовательно, каждая из координат

равномерно

распределена

в

интервале

а,- < xt < ft,-,

и координаты эти независимы.

 

 

 

 

Согласно

(11)

запишем уравнения

 

 

 

 

 

 

 

 

 

 

 

 

 

Fі ( Ц

= {Ъі -

аі)/{рі - я,)

= Yf,

 

 

 

 

 

откуда вытекают явные формулы для расчета координат

 

 

 

 

 

 

 

 

= пі-тУі(Ьі ~

аі),

 

‘ = 1 -

2 .........n.

 

 

 

 

2.2. Моделирование n-мерной непрерывной случай­

ной точки

произвольными координатами).

В

об-

 

 

 

 

 

 

 

ілем

случае,

когда

| і ..........

 

 

 

 

 

 

 

 

зависимы, их совместную плот­

 

 

 

 

 

 

 

ность

можно

представить

в

виде

Ппроизведения условных плотно­ стей вероятностен этих величии:

 

 

Pq{хи • • • >xJt) ==

 

 

Р\{хі)Р2 (й-'гI -И)Рз (*з I А'ь *2) —

 

 

 

...рЛхЛх \>•••> -Ѵ-і).

 

 

Все условные плотности вероятно­

Ь,

 

)Х> сти выражаются через совмест­

Рис. 21.

 

ную плотность Pq(Xi........ хп).

Приводим выражения условных плотностей в общем виде; все

интегралы берутся от — оо до

 

Pi (Xi)

=

I - • •J P q dx* . . .

d x n>

Pi ( * i I * 1 )

=

J • - I P Q d x 3 . . .

d x n [Pi (A4 ) ] - 1 .

МОДЕЛИРОВАНИЕ МНОГОМЕРНЫХ ВЕЛИЧИН

55

p.j (х3 \л-!,

X , )

= J

. . pwdXi

... dxn[pt (л ц )

р, (X ., I Л 'і)]

W ..................................................

 

 

 

 

................

Рц1 (А'л —1!*1.........

 

хп—і)

 

 

 

 

=

I М * н[P\ (*!>■

-Pn-3 (*/i-2

I*1....

*/.-3)1 ‘*

P n ( x n I *1.......

*,.-l) =

P q \ P ■(-V>)

• • • P n - 1(*,.-1 |*I.........

-V« - 2 )]_t-

Введем условные функции распределения

 

X.L

СО

Т е о р е м а

4. Пусть "fi,

. . . .

упнезависимые слу­

чайные

числа.

Совокупность

случайных величин | ь ...

. . . , \ п,

полученных при

последовательном решении

уравнений

 

Л (У = Yu ■

 

 

 

 

 

Fz (І2ІІі) =

Y2,

 

 

 

 

 

( 12)

 

 

F.n (In I II . . •

- 0

=

Yi

имеет совместную плотность вероятностей pQ(x..........ѵ„).

Д о к а з а т е л ь с т в о . Если

значения

| і= л'і, ...

... ,

= л'і_і фиксированы, то

случайную

величину | £

с функцией распределения F,(.v|.vb . . . , л',_і) можно оп­ ределить по формуле (4):

(If|*ь . . . . AVi) = Y.-

Тогда вероятность неравенства x(<c%i<.Xi-\-dxf равна

Р{л-,'<ё;<А'(+г/л';|.1'ь . . . , .ѵі_1}=р,(.ѵ,|.ѵ,..........*■•-,)Дѵ

Следовательно, с точностью до бесконечно малых более высокого порядка вероятность совместного выполнения п неравенств равна произведению

P { * i < ! i < * i + r f * i , • • • , * л< іп < * , і+ Д ѵп} —

— Р{-V1< 11< *1-рd x 1}Р{Л'2< І2< *2+ d x o I 11= X 1}...

"^Ан-рДѵп ] Ii X\, • • • , In —1— An—1) —

==Pl (*,) dX\Po (л*2 I *1) dXo... pn(А'пI .V[,

. . . , Л'„—]) б/л'и =

=

.......... xn)dx 1... ci\\,

И теорема доказана,

 

56

ПРЕОБРАЗОВАНИЯ СЛУЧАЙНЫХ ВЕЛИЧИН

[ГЛ. 2

Представление плотности pQ(x\,

 

„ѵп)

в форме

произведения условных

плотностей координат

| і ........ g„

возможно п! способами.

В частности, при п — 2

 

Ря(хь х2) = Р \ (л'і)/^2(л-2|а'і) = р 2 2 I (.V, |.ѵ2) .

Разным

произведениям соответствуют

разные

порядки

 

 

разыгрывания величин | і , . . %п

 

 

п, вообще говоря,

разные урав­

1

 

нения (12).

Нижеследующий

\

 

пример показывает, что иногда

 

 

удачный выбор порядка позво­

 

 

ляет упростить эти уравнения.

 

 

Если |і, . . . ,

независимы,

 

то все их

условные

распреде­

 

ления

равны безусловным

 

Pq{xu

• • •,

хп) = р 1(л-,) ...р„ (ха)

Р

1 X 11 порядок разыгрывания велп-

рис 22.

чин роли не играет:

уравнения

(12)превращаются в (11).

Пр и м е р Рассмотрим случайную точку (g, р), которая может

принимать значения в треугольнике х + у < 1 ,

х > 0 ,

у > 0

(рис. 22)

с плотностью р(х, у) = 6.Ѵ.

 

 

 

 

а) Выберем

в качестве первой

величины Е- Тогда

 

 

 

1—X

 

 

 

 

р^(х) =

С р ( .V, у) dy — 6.V (1 — х)

при 0 <

л: <

1;

 

6

 

 

 

 

Рц (УI х ) = р (.V, у)!Рі (х) =

(1 — -ѵ )-1

при 0 < у < I — X.

Соответствующие этим плотностям функции распределения:

 

X

 

 

(х) =

f pg {и) du = Зя3 — 2х*

при 0 < -ѵ <

1,

 

о

 

 

 

//

 

 

Рц(У1X) =

\ рц (V I х) dv = у{1 л*)-1

при 0 < / / < 1

— А',

 

о

 

 

Из формул (12) получаем уравнения для последовательного вычис­ ления Е и 1)

3 |* -2 6 » = у ,, гт=ѵ*С1—6)-

§ 2]

МОДЕЛИРОВАНИЕ МНОГОМЕРНЫХ ВЕЛИЧИН

57

G)

Выберем

теперь в качестве первой величины тр Тогда

 

РЦ(У) =

1—у

Р (л-, у) dx = 3 (1 — U)'*

 

 

 

 

 

f

при 0 <

і/ <

I .

 

 

 

6

 

 

 

 

 

 

Pi (-ѴI у) = р(х,

у)/рц (у) = (1 — у)~2

при 0 <

.г <

1 — у.

Соответствующие функции

распределения:

 

 

 

 

 

 

k

 

 

 

 

 

 

 

F,}(y)=

\ p ^ { v ) d ü =

I — (1 — ijf

при

0 < у <

1,

 

 

b

 

 

 

 

 

 

 

 

 

X

 

 

 

 

 

 

 

 

(* I * / ) =

\

P | ( « I У) du = x* 0 У)~2

ПРП 0

< X < 1

y .

 

 

b

 

 

 

 

 

 

 

Мз формулы (12), используя 1 — ух вместо Ѵь получим уравнения для

последовательного вычисления ѵ| и £

(1 — ii)3= Y i, È2= Y (1 — n )2-

Сравним теперь оба алгоритма для расчета £ и гр в первом из них для нахождения % необходимо решать кубические уравнения, в то

время как во втором можно использовать явные формулы

 

Т) = 1 — у У ,

I =

Ѵъ. іЛ У

 

 

(!3)

З а м е ч а н и е .

Учащиеся часто

допускают

ошибку

и вместо

Pq(x, у) = р 1(х) р2[у\х) пишут соотношение Г Q(а-,

у) = г і ( х ) Р 2(у\х).

Однако

последнее

тождество неверно! В рассмотренном

примере в

треугольнике Fq ( x ,

у ) — 3х2у, а

 

 

 

 

 

F I М

У , 1 х) =

3

(у) F^ (X I у) =

1 — (1 — г/)3

- у ^ г х"у,

(1 _ yyi

X-.

2.3. Возможные обобщения теоремы 4. Важнейши вывод из теоремы 4 состоит в том, что моделирование многомерной случайной величины может быть сведено к последовательному моделированию ее координат. Фор­ мулы ( 12) используют для этого метод обратных функ­ ций. Но это вовсе не обязательно: в некоторых случаях формулы расчета окажутся проще, если использовать для моделирования случайной величины £,• с условной плот­ ностью Рі(х ||і, ..., g,-]) какой-нибудь из методов, рас­ смотренных в последующих §§ 3, 4, 5.

Например, из результата п. 4.1 следует, что вместо формул (13) можно использовать следующий алгоритм, в котором на расчет каж­ дой точки (£, г)) затрачиваются пять независимых случайных чисел, но зато не надо извлекать корней:

0 = max(Yi; у2; Уз), 11 = 1 — Ѳ, | = Ѳтах(у4; Ys).

Соседние файлы в папке книги из ГПНТБ