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

Savelova_Metod_Monte-Karlo_2011

.pdf
Скачиваний:
144
Добавлен:
05.06.2015
Размер:
3.03 Mб
Скачать

Доказательство можно найти в [24].

Для формирования случайных чисел, имеющих десятичную форму представления длины n, используются случайные цифры подряд из таблицы или датчика. Существуют три способа опреде-

ления случайных чисел:

1)таблицы случайных чисел;

2)датчики случайных чисел;

3)псевдослучайные числа.

Впервые таблица из 106 случайных цифр была опубликована в США в 1955 г. [35]. Достоинство таблицы – то обстоятельство, что проверка свойств чисел однократная, повторять можно, а к недос-

таткам можно отнести то, что запас чисел ограничен и таблица за-

нимает много места в памяти вычислительной техники.

Датчики случайных чисел обычно основаны на физическом принципе («электронная рулетка», например, генераторы случай-

ных импульсов). Достоинства метода получения случайных чисел:

запас чисел неограничен, место в накопителе вычислительной сис-

темы не занимает, скорость получения чисел сверхбыстрая (можно создать систему m 1 датчиков, каждый такт – набор из m чисел).

Недостатки данного метода: во-первых, то, что требуется периоди-

ческая проверка, так как возможны сбои системы; повторить цикл нельзя; во-вторых, необходима специальная приставка (датчик).

Псевдослучайные числа – это числа, которые вычисляются по некоторым формулам и могут считаться случайными для решения некоторого класса задач. Достоинства псевдослучайных чисел:

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

61

памяти, скорость получения порядка скорости работы электронной техники. Недостаток – ограниченность запаса чисел, поскольку все известные алгоритмы создания псевдослучайных чисел имеют ко-

нечный период.

Рассмотрим датчик Дж. Неймана, 1951 г. [24,25].

Пример 2.1 (метод середины квадратов)

Пусть γ0 0, a1...a4 , γi 1 γi ,

γi2 0,b1...b8 , γi 1 0,b3...b6 .

Имеем

γ0 0,9876,

γ02 0,97535376, γ1 0,5353,

γ12 0, 28654609, γ2 0,6546,

γ22 0,42850116, γ3 0,8501 и т.д.

Этот алгоритм получения псевдослучайных чисел оказался пло-

хим – выдает значительно больше чисел из промежутка γ 12 , чем

из промежутка γ 12 .

62

Существуют статистические тесты для проверки свойств датчи-

ков случайных чисел. Система тестов является обширной, если мы хотим рассматривать исходную последовательность чисел как по-

следовательность независимых реализаций случайной величины .

Приведем примеры некоторых тестов.

Рассматривается частота цифр данной последовательности из

N цифр и составляется статистика Пирсона:

 

 

νi N

1

2

 

9

 

 

 

 

 

 

 

 

 

 

χ92

 

 

 

 

10

 

,

(2.2)

 

N

1

 

 

i 0

 

 

 

 

 

 

10

 

 

 

 

 

 

 

 

 

 

 

 

 

 

νi – количество цифр i, i 0,...,9 , в данной совокупности. Стати-

стика (2.2) удовлетворяет χ92 распределению с девятью степенями свободы.

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

ε12 , ε34 ,...,

всего N

N

пар.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

Составляем статистику Пирсона:

 

 

 

 

 

 

 

 

 

 

 

 

νij

N1

1

2

 

 

 

 

 

9

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

χ992

 

 

 

100

 

,

(2.3)

 

 

 

 

 

 

1

 

i, j 0

 

 

 

N1 100

 

 

где νij – количество пар i, j ,

i, j 0,...,9 .

63

Статистика (2.3) должна удовлетворять χ992 распределению с 99

степенями свободы.

Далее проверяется частота серий из нескольких цифр подряд.

Рассматриваются также тесты такого вида – интервал (0,1) де-

лится на l 1 равных частей (рис. 2.1) и берутся числа, составлен-

ные из заданной последовательности цифр заданной длины L (ис-

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

L

γ εk 10 k .

k 1

Составляем статистку (считаем l N )

 

 

 

νi

1

N

2

 

l

 

 

 

 

 

 

,

 

 

 

χl2 1

 

 

 

l

 

 

 

 

 

 

 

 

 

 

 

 

i 1

1

N

 

 

 

 

l

 

 

 

 

 

 

 

 

 

 

 

 

где νi – количество чисел,

попавших

в

интервал

(2.4)

i

,

i 1

,

 

 

 

 

 

 

l

 

l

 

i 0,...,l 1. Статистика (2.4) удовлетворяет критерию χ 2 с l 1

l 1

степенями свободами.

В качестве тестов используют также решение некоторой задачи,

ответ на которую заранее известен (достаточно общий прием при проверке любой программы).

64

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

зовать не всю последовательность. Могут возникнуть проблемы,

когда при решении задачи нам недостаточен запас псевдослучай-

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

При этом можно получить неверный результат [4].

Приведем примеры получения псевдослучайных чисел [8]. Ряд примеров основан на использовании вычетов.

Пример 2.2. Лемер (Lehmer D.H., 1949) использовал рекуррент-

ное соотношение для ЭВМ ЭНИАК (десятичная система счисле-

ния):

γi 1 kγ j mod M ,

где k 23 , M 108 1. Получена последовательность восьмизнач-

ных десятичных чисел с периодом 5 882 352.

Пример 2.3. Тошер (Tocher K.D., 1954) использовал соотношение

γ j 1 2 42 β j , β j 1 517 β j mod 242 , β0 1 .

Такая совокупность чисел имеет период 240 1012 цифр.

Пример 2.4 .Имеются способы образования равномерно распре-

деленных случайных чисел с помощью ряда типа Фибоначчи:

F0 0 , F1 1,

γ j 1 M1 Fj 1 , Fj 2 Fj 1 Fj mod M .

65

Для ЭВМ СЕАК применяется M 244 , при этом длина образуемо-

го периода равна примерно 2,5 1013 .

Изложение некоторых вопросов, связанных с разработкой алго-

ритма получения псевдослучайных чисел и их тестированию, мож-

но найти в [8, 14, 24].

В приложении 1 приведен алгоритм псевдослучайных чисел для персональных компьютеров.

2.3. Методы моделирования одномерных случайных величин

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

Пусть – случайная величина, имеющая закон распределения

 

 

 

 

 

 

 

x

 

x

...

x

 

 

 

 

 

 

 

 

1

 

 

2

 

n

 

 

 

 

 

 

 

 

p1

 

p2

...

pn

 

 

 

 

 

 

 

 

 

 

n

 

 

 

или P ξ xi pi 0 ,

i 1,..., n ,

pi

1.

 

 

 

 

 

 

 

 

 

 

 

i 1

 

 

 

 

 

На

интервале

(0,1)

 

отметим

интервалы 1 0, p1 ,

 

 

p , p p ,...,

 

 

 

 

 

n 1

 

 

 

 

 

1

 

p ,1 , рис. 2.2.

 

2

1

1 2

 

n

 

 

 

i

 

 

 

 

 

 

 

 

 

 

 

 

i 1

 

 

 

 

66

Теорема 2.2. Выберем случайное число , равномерно распреде-

ленное в (0,1). Если γ i , то ξ xi .

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

P ξ xi P γ i i pi .

Теорема 2.2 доказана.

Проще всего моделирование дискретной случайной величины с равновероятными значениями:

1

2

...

n

 

 

1

1

 

1

 

,

 

...

 

 

 

 

n

n

 

 

n

 

 

 

 

 

P ξ i

1

, i 1,..., n .

n

 

 

 

 

 

 

 

В этом случае полагаем

 

 

 

i 1

γ

i

 

или i 1 [nγ].

 

n

 

n

 

 

 

 

 

Моделирование непрерывной случайной величины со строго монотонной функцией распределения.

Теорема 2.3 (метод обратных функций). Выбираем случайную равномерно распределенную величину γ 0,1 . Пусть – корень уравнения F ξ γ . Тогда F x есть функция распределения слу-

чайной величины .

67

Доказательство. Имеем цепочку равенств (рис. 2.3):

P x ξ x x P F x F ξ F x x

P F x γ F x x F x x F x F x x p x x ,

x x x x .

Из уравнения F ξ γ находим ξ F 1 γ , где F 1 – обратная функция к F x .

Теорема доказана.

Пример 2.5. Пусть ξ 0 – случайная величина, распределенная по показательному закону распределения с плотностью

p x ae ax , x 0 , параметр a 0 .

В силу строгой монотонности функции распределения

F x 1 eax , x 0 ,

применяем метод обратных функций

1 eaξ γ ,

откуда получаем

68

ξ 1a ln γ ,

поскольку и (1– ) имеют одно и то же равномерное распределе-

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

Пример 2.6. Для моделирования случайной величины N 0,1 ,

распределенной по нормальному закону с параметрами a Mξ 0

и ζ2 Dξ 1 , метод обратных функций дает

 

 

 

ξ

y2

 

1

 

e

 

 

 

 

2 dy γ ,

(2.5)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

равномерно распределена в (0,1).

Однако уравнение (2.5) не используется для моделирования случайной величины N 0,1 , так как уравнение (2.5) в явном виде неразрешимо и для приближенного его решения при получе-

нии массива нормально распределенных случайных величин по-

требуется достаточно много компьютерного времени.

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

N 0,1 , используется центральная предельная теорема

 

 

 

 

 

n

 

 

 

 

 

 

 

(n)

 

12

 

 

1

 

 

ξ

 

 

 

 

 

γi

 

 

,

(2.6)

 

n

2

 

 

 

 

i 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

где γi , i 1,..., n – независимые,

 

равномерно распределенные на

интервале (0,1) случайные величины с характеристиками Mγ 12 ,

69

Dγ

1

. При

n случайная величина

ξ(n) (2.6) стремится к

 

12

 

 

 

 

 

 

 

 

 

нормальной случайной величине N 0,1 , в смысле

 

 

 

lim P ξ(n) z

 

 

 

z

 

y2

 

 

 

1

 

e

 

dy .

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n

 

 

 

 

 

 

 

 

 

 

 

 

Практически считают, что при

n 12 ,

когда выражение (2.6)

имеет особенно простой вид

 

 

 

 

 

 

 

 

 

 

12

 

 

 

 

 

 

 

 

 

 

ξ 12 γi 6 ,

(2.7)

i 1

получается достаточно хорошее приближение к нормальному зако-

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

С помощью специальных преобразований удается увеличить скорость сходимости к нормальному закону. Например, имеем [14]:

 

1

 

3

 

 

 

 

η(n) ξ n

 

ξ n

n

 

,

(2.8)

 

 

20n

 

 

 

 

 

где ξ n определяется формулой (2.6). Распределение η(n)

(2.8)

достаточно близко к нормальному уже при n 5 .

 

 

Моделирование нормальной случайной величины N a,ζ с

числовыми характеристиками a Mη , ζ2 Dη осуществляется с помощью преобразования

η ζξ a ,

где N 0,1 , .

70

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]