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

МИФИ_Вычметоды КФ

.pdf
Скачиваний:
0
Добавлен:
13.02.2026
Размер:
9.98 Mб
Скачать

Рис. 11.1. Прямая y=R пересекает график функции y=y(x) в единственной точке

Далее выберем произвольный интервал (a′,b′) внутри интервала (a,b). Точкам этого интервала a′ < x < b′ отвечают ординаты кривой

y(a′) < y < y(b′) . Если

ξ (a′,b′) ,

то

R (y(a′),y(b′)) , и

наоборот

(рис. 11.2), а значит, вероятности этих событий равны:

 

{

}

{

}

.

(11.13)

P

a < ξ < b

= P

y(a ) < R < y(b )

Рис. 11.2. Если ξ (a′,b′) , то R (y(a′), y(b′)) , и наоборот, а значит, вероятности этих событий равны

291

Так как R равномерно распределено на (0,1), то

b′

P{y(a′) < R < y(b′) }= y(b′) − y(a′) = p(x)dx .

(11.14)

a′

 

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

 

b′

 

P{a′ < ξ < b′ } = p(x)dx ,

(11.15)

a′

что и означает: величина ξ имеет плотность распределения p(x).

Таким образом, согласно (11.8), для нахождения необходимого распределения следует искать обратную функцию F−1(x) .

Рассмотрим далее простой пример.

Пусть необходимо получить величину ξ , равномерно

распределенную на интервале (a,b). Нормированная плотность распределения ξ имеет вид

p(x) =

 

1

.

(11.16)

(b − a)

 

 

 

 

Тогда, согласно методу обратной функции,

 

ξ

dx

 

 

 

 

 

= R .

(11.17)

(b − a)

a

 

 

 

 

 

Отсюда находим

 

 

 

 

 

ξ = a + R(b − a) ,

(11.18)

т.е. в данном случае следует всего лишь сдвинуть отсчет и изменить масштаб исходной случайной величины R.

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

Пусть необходимо получить случайную величину, распределенную на (0,∞) с функцией распределения

F(x) = 1 − e−x

(11.19)

292

и, соответственно, с плотностью распределения

 

f(x) = e− x .

(11.20)

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

 

y = F(x) = 1 − e− x ;

(11.21)

 

x = F−1(y) = − ln(1 − y).

 

Таким образом, случайная величина

 

ξ = − ln(1 − R)

(11.22)

будет иметь экспоненциальное распределение (рис. 11.3).

2000

 

 

 

 

 

 

 

 

 

 

1500

 

 

 

 

 

 

 

 

 

 

1000

 

 

 

 

 

 

 

 

 

 

500

 

 

 

 

 

 

 

 

 

 

00

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

 

 

 

 

 

x

 

 

 

 

 

2.5

x 104

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2

 

 

 

 

 

 

 

 

 

1.5

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

0.5

 

 

 

 

 

 

 

 

 

00

1

2

3

4

5

6

7

8

 

 

 

 

 

x

 

 

 

 

Рис. 11.3. Гистограмма экспоненциально распределенных случайных величин (внизу) получена из равномерного распределения (вверху) методом обратной функции (4.22). По вертикальной оси отложено число точек распределения, попадающих в соответствующий интервал гистограммы, общее число точек равно 100000

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

Дискретная случайная величина ξ имеет закон распределения Пуассона с параметром , если она принимает значения 0, 1, 2, … , m, … с вероятностью

293

P{ξ = m} =

µme−µ

,

(11.23)

 

m!

 

 

при этом математическое ожидание (среднее значение) и дисперсия ξ совпадают и равны :

M(ξ) = ξ = µ;

(11.24)

D(ξ) = µ.

 

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

1) рассчитывается число p = e−µ ; задаются числа N = 0 и q = 1;

2)генерируется число R, равномерно распределенное на (0,1);

3)производится перенормировка q → qR ;

4) если q ≥ p , то значение N увеличивается на единицу:

N → N + 1 , и возвращаемся к пункту 2;

5) если q < p , то число ξ = N имеет закон распределения Пуассона.

Блок-схема алгоритма показана на рис. 11.4.

На рис. 11.5 показана гистограмма случайных величин, имеющих распределение Пуассона с параметром µ = 3.5 , полученных при

помощи алгоритма на рис. 11.4.

Правильность алгоритма основывается на следующем факте, известном из теории вероятностей [2]: пусть имеется ряд случайных чисел R1 ,R2 ,...,Rn ,Rn+1 ,..., равномерно распределенных

на (0,1). Тогда

P{(R1 > q) I (R1R2 ≥ q) I ...I (R1R2...Rn ≥ q) I (R1R2...RnRn+1 < q)} =

 

 

1

n

 

 

 

q ln

 

 

 

 

 

 

 

 

 

(11.25)

=

 

q

, 0 < q ≤ 1.

n!

 

 

 

 

 

 

Производя замену

 

 

 

 

 

 

 

q = e−µ ,

(11.26)

получаем требуемое распределение.

 

294

Рис. 11.4. Блок-схема алгоритма получения случайных чисел,

 

 

 

распределенных по закону Пуассона

 

 

12000

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

10000

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

8000

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

6000

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4000

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2000

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

00

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

 

 

 

 

 

 

 

 

N

 

 

 

 

 

 

 

Рис. 11.5. Гистограмма случайных величин, имеющих распределение Пуассона с

 

параметром = 3.5 , общее число точек равно 50000

 

 

 

 

 

 

 

 

295

 

 

 

 

 

 

 

Однако интеграл (11.10) не всегда можно взять аналитически. Дж. фон Нейман предложил следующий способ обойти эту проблему.

Предположим, что случайная величина ξ определена на интервале

(a,b), и ее плотность распределения ограничена:

 

p(x) ≤ M0 .

(11.27)

Тогда генерируются два случайных числа R1 ,R2 , равномерно

распределенные на (0,1),

и

строится точка

на плоскости с

координатами (x1 , x2 ) , где

x1

= a + R1(b − a) , x2

= R2M0 . Если эта

точка лежит ниже кривой y=p(x), т.е. x2 < p(x1) (точка А на рис. 11.6), то искомое число ξ = x1 найдено; если же точка лежит выше кривой (точка В на рис. 11.6), то пара R1 ,R2 отбрасывается и выбирается новая пара.

Рис. 11.6. Метод фон Неймана генерации случайных чисел с плотностью распределения p(x)

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

Необходимо отметить еще один, достаточно универсальный метод получения случайных чисел ξ , определенных на интервале (a,b) ,

296

с заданной плотностью распределения f(x) . Для этого достаточно просто разрешить уравнение

ξ

 

f(x)dx = R

(11.28)

a

 

относительно ξ , где R – равномерно распределенная на единичном

отрезке случайная величина. Даже если интеграл (11.10) нельзя взять аналитически, его всегда можно рассчитать численно на компьютере при помощи одного из методов численного решения трансцендентных уравнений (например, методом деления отрезка пополам, методом Ньютона или методом простых итераций). Дело в том, что интеграл в (11.10) как функция ξ – монотонная величина,

так что всегда существует единственное решение (11.10).

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

11.1.2. Нормальное распределение

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

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

Можно доказать, что сумма достаточно большого числа независимых (или слабо зависимых) случайных величин, подчиненных каким угодно законам распределения (при соблюдении некоторых весьма нежестких ограничений), приближенно подчиняется нормальному закону [2].

297

Случайные величины, распределенные по нормальному закону

F(x) =

 

1

x e−t2

/ 2dt ,

(11.29)

 

 

 

 

−∞

 

 

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

1)генерируются два независимых случайных числа R1 и R2 , равномерно распределенные на (0,1);

2)рассчитываются числа V1 = 2R1 − 1 и V2 = 2R2 − 1, они будут равномерно распределены на интервале (−1,1) ;

3)рассчитывается число S = V12 + V22 ;

4)если S ≥ 1, то возвращаемся к пункту 1;

5) если

S < 1, то рассчитываются числа ξ

= V

 

− 2lnS

 

,

 

 

 

 

1

1

 

 

 

 

 

 

 

 

 

 

 

 

S

 

 

ξ

 

= V

 

− 2lnS

 

, которые будут распределены по нормальному

2

 

 

 

2

 

S

 

 

 

 

 

 

 

 

 

 

 

 

 

 

закону.

 

 

 

 

 

 

 

 

 

Блок-схема алгоритма показана на рис. 11.7.

 

 

 

 

 

Докажем, что представленный алгоритм действительно дает правильный ответ.

Пусть

S < 1, тогда точка плоскости с декартовыми координатами

(V1 ,V2 )

является случайной точкой, равномерно

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

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

 

 

 

 

 

 

V1

= r cos θ;

 

 

 

 

 

 

 

V2

= r sinθ,

(11.30)

тогда

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

S = V2 + V2

= r2;

 

 

 

 

 

 

 

 

1

 

 

2

 

 

 

 

 

 

 

 

 

 

− 2lnS

 

 

 

 

 

 

 

 

ξ

 

= V

 

=

− 2lnS cos θ;

(11.31)

 

 

 

 

 

 

 

 

 

1

1

 

 

S

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

− 2lnS

 

 

 

 

 

 

ξ

2

= V

 

 

=

 

− 2lnS sinθ.

 

 

 

 

 

 

 

 

 

 

 

2

 

 

S

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

298

Рис. 11.7. Блок-схема алгоритма получения нормально распределенных случайных чисел

Введем новые полярные координаты

 

θ′ = θ;

 

r′ =

 

 

(11.32)

 

− 2lnS,

тогда

 

 

 

ξ1 = r′ cos θ′;

(11.33)

ξ2

= r′ sinθ′.

 

Величина θ′ равномерно распределена на интервале вероятность того, что r′ ≤ r , равна

P{r′ ≤ r } = P{− 2lnS ≤ r }= P{− 2lnS ≤ r2 }= = P{2lnS ≥ r2 }= P{S ≥ e−r2 /2 }= 1 − e−r2 /2 ,

(0,2π) , а

(11.34)

так как S = r2 равномерно распределено на (0,1). Тогда дифференциальная вероятность (или плотность распределения)

299

того, что r′ лежит

между

r

и

r+dr,

равна

 

производной от

вероятности, т.е.

 

 

 

 

 

 

 

 

(

 

 

 

 

/2 )

 

 

 

 

 

 

P

{

r

(r,r

+ dr)

}

 

d

− e

−r2

= re

−r2

/2

dr .

 

= dr

 

 

 

 

(11.35)

 

 

 

 

1

 

 

 

 

 

 

Вероятность попадания θ′ в интервал (θ,θ + dθ) равна

 

 

 

 

 

 

{

 

 

 

 

 

}

 

 

 

 

 

 

 

 

 

 

 

 

(θ,θ + dθ)

=

 

.

 

 

 

(11.36)

 

 

 

 

P

θ

 

 

 

 

 

 

 

2000

 

 

 

 

 

 

 

 

 

 

 

1500

 

 

 

 

 

 

 

 

 

 

 

1000

 

 

 

 

 

 

 

 

 

 

 

500

 

 

 

 

 

 

 

 

 

 

 

00

0.1

0.2

0.3

0.4

x

0.5

0.6

0.7

0.8

0.9

1

6000

 

 

 

 

 

 

 

 

 

 

 

4000

 

 

 

 

 

 

 

 

 

 

 

2000

 

 

 

 

 

 

 

 

 

 

 

0-5

-4

-3

-2

-1

x 0

1

2

3

4

5

Рис. 11.8. Гистограмма нормально распределенных случайных величин (внизу) получена из равномерного распределения (вверху) при помощи алгоритма, изображенного на рис. 11.7. По вертикальной оси отложено число точек распределения, попадающих в соответствующий интервал гистограммы, общее число точек равно 100000

В итоге вероятность того, что ξ1 ≤ x1

 

и ξ2

≤ x2 , равна

 

 

 

 

 

P{(ξ ≤ x ) I (ξ ≤ x ) } =

1

 

 

dθ r dre−r2 /2 =

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1

1

2

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

r cos θ≤x1

 

 

 

 

 

 

 

(11.37)

 

 

 

 

 

 

 

 

 

 

 

r sin θ≤x2

 

 

 

 

 

 

 

 

1

 

−(x2 + y2 ) / 2

 

 

1

 

x1

 

 

− x

2

 

1

 

x2

−y2

/ 2

 

 

=

dx dy e

=

 

 

dx e

/2

 

dye

 

,

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x≤x1

 

 

 

 

 

−∞

 

 

 

 

 

 

−∞

 

 

 

 

 

 

y≤x2

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

что и доказывает справедливость алгоритма.

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

300