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

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

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

78 ПРЕОБРАЗОВАНИЯ СЛУЧАЙНЫХ ВЕЛИЧИН [ГЛ. 2

Нетрудно вычислить плотность случайной величины |, определенной формулой (40): при а< г< .Ь

(г) =

Р {£ < г) =

Р {!'

< г |n' <

f (!•')} =

 

 

 

 

 

 

 

 

 

z

/(*)

 

 

 

Р \ Ѵ < г ,

 

 

J dx

j

p (.V, y) dy

 

 

 

 

 

 

 

 

 

 

P{il' < / « ' ) )

 

 

 

 

продифференцировав по г,

получим плотность

 

 

 

 

 

tty

/

ь

 

 

 

 

P \ i z) =

J Р(г’ У)аУ

а

j

p(x,y)dy .

(41)

 

 

—со

I/

—оо

 

 

 

Если

требуется

моделировать случайную

величину |

с заданной

плотностью Р § ( х ) , то существует бесконечное количество способов выбрать р(х, у) и /(л-), удовлетворяющие (41).

5.4.1. Сперва рассмотрим частный случай, когда £' и і]' незави­ симы: р(х, у) = рі' (х) рц'(у) . Тогда нз(41) вытекает, что

Последняя формула записывается более коротко, если ввести функ­ цию распределения величины л', равную F^(y):

Итак, если плотность рЕ (х) моделируемой случайной величины |

представима в форме произведения

р .

(х) = kpv

(х) / у (f (д;)),

 

 

где k — постоянная, то

| можно

моделировать по формуле

(40), в

которой I' имеет плотность р^(х), а

і у — функцию

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

5.4.2. Предположим

дополнительно, что 0 ^.f(x)^ .c, и

выберем

случайную величину г]',

равномерно

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

при 0 < у < с .

Тогда р ^ (у) = 1/с и из (42) вытекает,

что

 

 

Следовательно, если плотность р- (х) моделируемой случайной

величины § представима в форме произведения

Р\ (*) = kpv {х) f (х),

(43)

5 51

 

МЕТОДЫ

ОТБОРА

7 9

где 0 ^ /( .ѵ )^ с , а k — постоянная,

то g можно моделировать по фор­

муле (40),

в которой

имеет плотность р^, (х), а г]' равномерно рас­

пределена

в интервале

(0,

с).

 

 

Эффективность метода

в этом случае равна

 

ь/(.у)

* = Р { т ] ' < / ( £ ' ) } = . f d'vPi' (Jх) c ~ ldy = (ck)~l.

аб

Представляя Pg (х) в форме различных произведений (43), можно

построить различные методы вида (40) для моделирования вели­ чины £. В частности, таким методом можно моделировать случайные величины, плотности которых неограничены.

П р и м е р . С л у ч а іі п а я в е л и ч и н а g о п р е д е л е н а п р и 0 < -V< 1 с п л о т н о с т ь ю

р- (.ѵ) --=v{x)jIYx>

г д е 0 < V(х) с.

Представим Pg ( x ) в форме произведения (43) с Pg> (х) = (2У.ѵ)_1. Значения g' легко вычислять методом обратных функций, так как из

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

что У£'=Уь

Следовательно, £ '= ( у і) 2, т |'= с у 2 и

 

£ = £ '

при

ті'< »(£ ')-

Эффективность

в этом примере равна э = ( 2 с ) _1. Ясно, что для по­

вышения э следует выбрать наименьшее возможное значение с, рав­

ное с =

sup ѵ(х).

 

 

 

 

 

 

 

aix<b

 

 

 

0 ^ f ( x ) ^ c .

 

 

 

5.4.3.

Снопа

предположим, что

Если

равномерно

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

при а<.х<Ь,

а

г|'

равномерно

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

при

0 < у < с ,

то

£' =

а + у і(b—а)

и

г|' =

су2. Из (42)

вытекает, что

при

a < z < 6

 

 

Р |(г)

= А/(г).

 

 

 

 

 

 

 

 

 

Значит, чтобы моделировать случайную величину | с ограниченной плотностью Pg (х), можно выбрать

/(x) = pg(x).

Вэтом и состоит метод Неймана (39).

5.5.Выбор равномерно распределенных точек в слож ных областях. Методы отбора (36) легко обобщить так, чтобы отбирались значения многомерной случайной ве­

личины Мы рассмотрим лишь один прием, который имеет много практических приложений. Его можно счи­ тать частным случаем метода моделирования усеченных распределений (п. 5.2), если иметь в виду обобщение этого метода на многомерный случай.

Пусть В — ограниченная область на плоскости х, у, «сложная» с точки зрения вычислительной практики:

so

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

[ГЛ . 2

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

Выберем прямоугольник П = {яі<л'<Ьі, а2<.у<.Ь2}, содержащий область В (рис. 32). Координаты случайной

точки Q ^ d ', г]'), равномерно распределенной в П, легко вычислить (п. 2.1):

l ' = öi+*Yi (*і—аі), ц '= а 2 + Ь (Ь2—а2).

Для нахождения точек. Q, равномерно распределен­ ных в В, можно вычислять точки Q', равномерно распре­ деленные в П, и отбирать среди них те, которые принад­ лежат В. В самом деле, для любой области G <=В

P { Q e C ) = P { Q ' e G } I Q ' & S } = P { Q ' e C | P { Q 'ceB}.

Так как Q' равномерно распределена в П, то вероят­ ность попадания Q' в любую область пропорциональна площади этой области: Р{Q'i=G} = S G/Sn, P{Q'efi} = = S BISn■Следовательно,

P { Q e Ö } = 5 c/Ss.

или, что то же, плотность pQ{x, y) = l/SB в области В. Эффективность такого метода равна отношению

площадей

з = 5 в/5ц-

§ 51 МЕТОДЫ ОТБОРА 81

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

вписывается,

например, в

круг

С (рис. 33),

лучше

не

пользоваться

прямоугольником

П, а отбирать точки Q

из числа точек Q', равномерно распределенных в С. Эф­

фективность

такого метода

9 = S n/Sc будет

выше,

ибо

5 с< 5 п .

 

 

 

 

 

 

 

 

П р и м ер.

С л у ч а іі и ы е т о ч к и

Q= (|, г), С),

р а в н о м е р-

II о

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

в ш а р е

x2-f y2-\-z2'<.R2, можно выбирать

следующим образом: 1) находим

три

случайных числа уч, у2,

уз;

2)

вычисляем

координаты

| ' =

2 уі — 1, іф= 2у2 — 1,

С '= 2 уз— 1;

3)

если (S,) 2+ (il')^ + (? ')2<

I- то

полагаем l = R l ' , il =

/?n'. С=

/?£';

в противном случае выбираем новую тройку уі, у2, у3.

 

 

 

Эффективность метода

э = (4/3) л/?3 : (2 /?)3= я /6 .

Несмотря

па

то, что э близка к 1/2, по полученным здесь формулам случайные точ­

ки в шаре вычисляются быстрее, чем по формулам п. 2.4.1, в которых

приходится вычислять

и cos 2лу3.

5.6. Алгоритмы, соответствующие методам отбора. Формула (30)

не определяет полностью

алгоритма для расчета значений £, так как

вычислять значения Q' можно различными методами. Если каждая точка Q' вычисляется по п случайным числам уі...........уПі где п ^ т ,

то все координаты Q' представляют собой функции т),= g{ (у ............ y^),

( = 1 , 2,

,

т. Подставив

эти

выражения в

(36), получим,

что

І = ф(£іСѴь •

• < .

Tu).

 

(Yi. • • • .

Y,,))-

Следовательно,

g

выражается

 

через

уі, . . . ,

Y„ по

формуле

вида

£=£Г(уі, . . . , у„ ).

 

Рассмотрим теперь преобразование

 

 

 

 

 

 

 

Уі = Si {:<i.........*„),

 

U

i < т ,

 

(44)

которое отображает единичный /г-мерный куб

 

 

 

 

 

Л"' = {0<д-1< 1 ...... 0<л-п<]}

 

 

на область возможных значений

Q'

в m-мерном

пространстве пере­

менных і/і,

, Ут. Обозначим через В прообраз В'

при отображе­

нии

(44)

(иными словами, В — это

множество

таких

точек

(.ѵ,, . . .

. . .

,.ѵ'(1) из К '\ которым при отображении

(44)

соответствуют точки

і.............у т)} принадлежащие В').

Тогда

условие Q'

е ß',

фигури­

рующее в (36), равносильно условию (уі, . . . , y

j e f i .

 

 

 

Итак,

формуле (36) соответствует

следующий алгоритм расчета

І по Уі.......... У„:

 

 

 

 

 

 

 

 

 

(Yl ---. Y„)

ПРН

(Vi. • - •. Y „ )e ß .

(45)

Формально можно считать, что (45) — это частный случай (36), так

6 И. М. Соболь

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

как вместо точки Q' с произвольной функцией распределения Fq,

здесь

фигурирует точка (уі.............

Уп), равномерно распределенная

в Кп.

Однако наши рассуждения

показывают, что реализация любой

формулы (36) в конечном счете осуществляется с помощью алгоритма

(45), где, возможно, п ^ т .

Эффективность этого алгоритма равна э = Ѵ в __объему (rt-мер-

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

сел, затрачиваемых на расчет одного значения |, случайно и может

оказаться равным п, 2п,

Зп, ...

; в среднем это количество равно п/э.

Функцию распределения случайной величины |, заданной

алго­

ритмом (45), нетрудно вычислить:

 

 

Р { £ < г } =

Р {^( Ті .........

V „ ) < z | ( Vi ...........

Y„)e ß ) =*

 

= Р { г ( Т і

......... Yn) < 2 .

(T i...........

Y„) 6 Ö |/P {(Y i-------- =

 

 

= (Vb) ~ 1I

• • • J e (2 -

? ( * i . • • • * *,.» dx! • .

.dxn.

 

 

 

В

 

 

Следовательно, для того чтобы алгоритм (45) определял случайную величину £ с функцией распределения F(x), должно выполняться

условие

у ~ J

■• ■J е (х — g (л-і, . . . , л-J) dxi. . .

dxn = F (x) ..

(46)

В

в

 

 

Уравнение (46) можно рассматривать как обобщение уравнения (25),

которое получается из (46) при

В — /(".

 

Общий алгоритм методов

отбора (45) можно считать

частным

случаем бесконечномерного преобразования

 

i = g(Yi. •

■ • . YI, ■■ ■).

(47)

когда каждое значение \ вычисляется по бесконечной последователь­

ности независимых случайных чисел. Такие преобразования встреча­

ются в практике методов Монте-Карло.

xl t . . х{, .

 

Если при каждом

конкретном наборе

функ­

ция g зависит лишь от

конечного количества аргументов x it

то расчет

по формуле (47) затруднений не представляет. Это как раз справед­

ливо для алгоритма (45), когда функция g (xx.........х ^ . . . )

равна

ІЧ-ѵ ........ хп),

если (.Ѵі, . . . .

хп) е В ,

 

S (*„+1' • • • >х2п),

если (л-і ----- - хп)<£В,

 

 

Кі+Г

х2

 

? (-W l......ХПп+п)'

если (М......

 

 

(Мі/і—/і-f1’ • • • • xkn

...... Л/(/!

 

УПРАЖНЕНИЯ К ГЛАВЕ 2

S3

5.7.

Заключительные замечания. При выборе

алго

ритмов для расчета методами

Монте-Карло различных

задач

возникает вопрос, какие

же преобразования

ис­

пользовать для моделирования той или иной конкретной случайной величины |. Ответить на такой вопрос одноз­ начно нельзя. Целесообразность тех или иных преобра­ зований зависит от многих факторов.

Например, часто стремятся к минимизации времени, затрачиваемого на получение одного значения |. Однако за такую минимизацию приходится расплачиваться уд­ линением программы и (или) расходом места во внут­ реннем накопителе ЭВМ. Если во внутреннем накопите­ ле места много, то можно использовать таблицу с интер­ поляцией (см. конец п. 1.3): такой способ будет, как правило, самым быстрым. Поэтому выбор любого друго­ го способа моделирования — это компромисс*).

Далее, выбирая преобразования, редко учитывают качество псевдослучайных чисел. Но одномерное рас­ пределение чисел "ff обычно тщательно проверено, а рас­

пределение

групп

іп+і,

..., Тіп+п)

при /г^ З проверя­

ется хуже, в

результате чего формула вида

|= g ’('Yi. ...

... , Чп) при

п ^ З

может

оказаться

менее

точной, чем

формула вида i= g("f). Поэтому уменьшение количества случайных чисел, затрачиваемых на получение одного значения |, иногда представляется весьма желательным (особенно с точки зрения гл. 7).

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

 

Упражнения тс-главе 2

 

I.

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

личины £ с функцией распределения

 

 

F(x) = 1 — (1/3) (2 ? - * - b e " 5*),

0 < x < c o .

*) Еще быстрее — осуществлять случайную выборку из заранее заготовленной таблицы значений §. Для некоторых случайных вели­ чин такие таблицы имеются [165], однако в расчетах на ЭВМ при­ меняются они редко (ср. конец п. 1 3 гл. 1).

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

6*

84

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

 

[ГЛ 1

2.

Вывести явную формулу для расчета значении случайной вели­

чины I

с плотностью распределения р (.ѵ) = cos2 hunx,‘

0 < .ѵ < 2 ;

число

1 целое.

 

 

 

 

 

 

 

3.

Вывести явные формулы для расчета случайных точек, равно­

мерно распределенных в плоском кольце К? <

А-а + у 1 <

R l

 

4.

Вывести явные формулы для

расчета

реализации

случайной

точки

(5, ц) с плотностью р(х, у) — Зу,

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

в треугольнике,

ограниченном прямыми х =0, у = х н у — \.

 

г |— In у,

если rj

5.

Вычислить плотность случайной

величины £ =

имеет плотность р(х)

при 0 < .ѵ < о о (г|

и у независимы).

 

 

6.

Доказать, что случайную величину £, определенную в интерва­

ле 0 < .ѵ < /, с плотностью

 

 

 

 

 

 

 

 

р (.ѵ) = ае~~ах/{ 1 — еГг!)’

 

 

 

можно моделировать с помощью любой из четырех формул:

 

 

£ —

— (і/я ) In [I —

Т (1 — в-

a<)J;

 

 

 

 

1 =

— (1 /а) In [у +

11— у) е“ а ,1;

 

 

 

 

Ъ = . і д \ - ( а 1 ) - ' ln у];

 

 

 

 

 

\ = — (1/ а)!пу,

если

 

 

 

 

7. Бслн гамма-квант с энергией Е рассеивается в результате

комптои-эффекта, то его энергия после рассеяния g представляет со­ бой случайную величину с плотностью р{х), пропорциональной функ­

ции

І(Е, х ) = х І Е + Е ! х + ( Ц Е - \ І х ) ( 2 + U E - U x )

при £ (М -2 £ )_1< х < £ (закон Клейна — Нишпна).

Доказать,

что |

можно вычислять методом отбора:

 

 

 

Е-=Е', если ys [ l + 2 £ + ( + 2 £ ) - » ] < / ( £ ,

V),

 

где r = £ (l+ 2 £ y i)(l* f - 2 £ ) - >

 

 

 

,

(И. Г. Дядькин

[26]).

8. Энергию нейтрона, испущенного при делении ядра U235, часто считают случайной величиной |, ^определенной ирн 0<С.ѵ<оо, с плот­ ностью

р (X) = се~ХІТ sh b V 2xlT,

где Ь и Т— параметры, с= )'А2/я e—b2/2 (6Г)-1 — нормировочная пос­

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

5= Г[(1/2) (t+6)l -ln y ],

где ^ — нормальная случайная величина с параметрами (0; 1); С и у независимы.

 

 

(Г. А. Михайлов [56])

9. Независимые случайные числа y ti

уа,

• • •

. Vn+m —1 располо-

жены в порядке возрастания у ^ ^ у ^ ) ^ -

■ •

^=Y

!)• Доказать,

УПРАЖНЕНИЯ К ГЛАВЕ 2

85

что | = у(„) подчиняется бэта-распределенніо с параметрами п н т:

Pt М —[В (/г<гі) } ~ 1(1—

(J. С. Butcher, Н. Messel [109] V. (Способы моделирования бэта-распределения с дробными параметра­ ми рассмотрены в статьях [62, 73, 102, 103, 141].)

НО. Доказать, что формулы 1о=1,

/*=■ 1;_і — 5,-

и

 

Ъі =

[1 - (T,)l/(n-i+D]f

/ = 1,2.........п ,'

определяют случайную точку (5і, . . . ,

5л). равномерно распределен­

ную в п-мерной пирамиде

+ . . . + • * , < ! , х /> 0 .

 

 

 

11. Допустим, что случайная точка Q с плотностью р(ф(ас, у, г ) )

определена в

области В.

Обозначим

через Lc

часть

поверхности

ср(х, у, z ) = e ,

принадлежащую В, и предположим,

что семейство Lc

при с ! < с < с 2

заполняет В.

Доказать,

что если

|grad

cpl^ ««.Л(с),

то точку Q можно моделировать в два этапа: сперва выбирается слу­ чайное значение параметра р с плотностью рр (c)=‘ [p(c)/h(c)]SL

где Sr

— площадь Lc,

а затем на поверхности

L

выбирается слу-

* - С

 

 

Р

 

чайная равномерно распределенная точка.

 

 

 

 

 

(В. А. Герман, И. М. Соболь [17].)

12. Доказать, что случайная точка с декартовыми координатами

(ІхЫ............./л), где І і =

— ln у .,а г| = £ і+ - • ■ +

 

равномерно

распределена в симплексе Х |+ ... -f хп = 1 , 0 < х,<1

( і = І , 2 , . . . , п).

13.

Доказать,

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

(Сі/р, . . . . £„/р),

где

&.............— независимые нормальные слу­

чайные величины с параметрами (0; 1), а Р = ( £ і

+ •

• • + Е®)1/2< рав­

номерно распределена на поверхности единичной многомерной сферы

х \ + . . . + 4 = 1.

Г Л А В А 3

ВЫЧИСЛЕНИЕ ИНТЕГРАЛОВ

Во введении уже упоминалось, что в подавляющем большинстве задач, решаемых методами Монте-Карло, вычисляют математические ожидания некоторых случай­ ных величин. Так как чаще всего математические ожи­ дания представляют собой обычные интегралы, то цент­ ральное положение в теории методов Монте-Карло занимают методы вычисления интегралов.

В настоящей главе изложены наиболее важные и вместе с тем наиболее простые методы, знакомство с которыми необходимо каждому специалисту в области Монте-Карло. Более сложные методы, не имеющие пока значительных практических применении, по намечаю­ щие, как нам думается, основные направления развития методов вычисления интегралов, рассмотрены 'в гл. 4.

Впрочем, п. 1.1 гл. 4 мог бы быть отнесен к гл. 3: вы­ борка по группам не раз использовалась в практических вычислениях. Численный пример, приведенный в конце гл. 4 (п. 3.3), относится к оценкам, рассмотренным в обеих главах.

Заметим, что почти все результаты этих глав легко обобщаются па интегралы Римана — Стилтьеса (и даже Лебега — Стилтьеса [33]). Мы, однако, всюду рассматриваем только интегрирование в смысле Римана.

§1. Общий метод оценки математических ожиданий

1.1.Сходимость метода. Рассмотрим произвольну случайную величину g, у которой существует математи­

ческое ожидание ЬА\— а. (Напомним, что по определе­ нию математическое ожидание МІ существует тогда и

§ I]

МЕТОД ОЦЕНКИ МАТЕМАТИЧЕСКИХ ОЖИДАНИИ

87

только тогда, когда существует М |||. ) Чтобы оцепить величину а, выберем N независимых реализаций

. случайной величины £ и вычислим среднее ариф­ метическое

іѵ = ( ім о 2 і it.

’m

i=i

 

Так как последовательность одинаково распределенных независимых случайных величин, у которых существуют математические ожидания, подчиняется закону больших чисел (теорема А. Я- Хинчина [44]), то среднее ариф­ метическое этих величии сходится по вероятности *) к математическому ожиданию: при N ->■со

— р

I л --- * а.

 

Таким образом, при больших N величина

и оцен­

ку (1) можно использовать во всех случаях, когда су­ ществует М |= я.

1.2.

Погрешность

метода.

Предположим

дополни

тельно,

что случайная величина |

имеет конечную

дис­

персию

D |=

М(£2)—(М |)2.

(2)

 

Из курса теории вероятностей известно, что последова­ тельность одинаково распределенных независимых слу­ чайных величин с конечными дисперсиями подчиняется центральной предельной теореме. Последнее означает,

ЧТО ДЛЯ Л ю б ы х Х \ < ^ Х ч

lim Р L

< (1/ Ѵ Ш ) З (Іс ~ а ) <

XJ

=

W—со I

І=1

)

fе -і2Ш

 

 

■=

Выберем х2— —Хі— х. Тогда из последнего соотношения

получим,

что

 

lim Р ( W ) S

і - й) <x]XDs//vj = Ф(х),

 

i=i

 

где Ф (х)

интеграл

вероятностей, таблица которого

) Определение сходимости по вероятности приведено ка стр. 34.

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