Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Садыков(СМО).doc
Скачиваний:
35
Добавлен:
07.09.2019
Размер:
3 Мб
Скачать

3.4. Генерирование, равномерно

РАСПРЕДЕЛЕННОЙ В ИНТЕРВАЛЕ (0,1)

СЛУЧАЙНОЙ ВЕЛИЧИНЫ

В процессе имитации сложных систем приходится мо­делировать различные случайные воздействия, которым всегда подвергается система в реальных условиях. Кроме того, про­цесс функционирования любой системы тоже носит случайный характер, и имитация его требует выработки большого числа случайных чисел. Алгоритмы формирования последовательно­стей случайных чисел, распределенных по некоторому закону, предполагают наличие некоторой базовой последовательности случайных чисел. В качестве такой принята последователь­ность случайных чисел, равномерно распределенных в ин­тервале (0,1). Действуя на эту последовательность специально подобранными функциями, можно получить случайную вели­чину с любым заданным законом распределения.

Как известно, плотность вероятности равномерно рас­пределенной в интервале (0,1) случайной величины имеет сле­дующий вид:

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

x<0,

0≤ x≤ 1,

x≥ 1.

При этом математическое ожидание и дисперсия равны соответственно:

Идея формирования равномерно распределенной слу­чайной величины заключается в следующем.

Пусть дискретная случайная величина Zi принимает только два значения 0 и 1с равными вероятностями, т.е.

P(zi=0)=P(zi=1)=1/12.

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

Очевидно, что все значения X лежат в пределах . При этом

Следовательно, величина X равномерно распределена в (0,1). Таким образом, для формирования значений случайной величины, равномерно распределенной в (0,1), нужно уметь формировать бесконечную последовательность случайных чи­сел, с равной вероятностью принимающих значения 0 и 1, и считать их двоичными знаками дроби X, являющейся иско­мым значением.

В ЭВМ, где для записи предусмотрено не более к разрядов, нельзя записать бесконечную двоичную дробь. По­этому каждое число X, представляемое в виде к - последо­вательности из 0 и 1, нельзя считать значением равномерно распределенной случайной величины. Это распределение на­зывается квазиравномерным. Чем оно больше, тем точнее при­ближает равномерное распределение.

Существует два способа формирования случайных чи­сел на ЭВМ. Первый способ предполагает их выработку с по­мощью специальных электронных приставок, датчиков, свя­занных с ЭВМ. Вторым способом является генерирование чисел самой ЭВМ специальным алгоритмом. Рассмотрим про­граммное генерирование случайных чисел.

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

Последовательность чисел, полученная с помощью идеального генератора, должна состоять: 1) из равномерно распределенных, 2) статистически независимых, 3) воспроиз­водимых, 4) неповторяющихся чисел. Кроме того, идеальный генератор должен работать быстро и занимать минимальный объем машинной памяти.

Большинство алгоритмов, используемых на практике для получения псевдослучайных чисел, представляет собой рекуррентные формулы первого порядка:

(3.3)

где начальное число Х0 задано. Рекуррентный характер алго­ритмов генерирования случайных чисел порождает при их реа­лизации на ЭВМ периодические последовательности. Так как код любой ЭВМ содержит всегда конечное число разрядов, то в этом коде можно записать лишь конечное число N чисел, за­ключенных между 0 и 1. Поэтому рано или поздно некоторое значение xL совпадает с полученным xl. Тогда из формулы (3.3) следует

(3.4)

Если L - наименьшее число, удовлетворяющее усло­вию (3.4) при некотором l (l< L) , то множество чисел x0, x1,..., xL-1 называется отрезком о периодичности, L длиной отрезка о периодичности, a (L -l) - периодом после­довательности.

Так как одним из условий идеального генератора явля­ется неповторяемость чисел, то необходимо знать значения L и (L -l) для каждой последовательности и использовать для расчетов не более L чисел из нее.

Заметим, что в формуле (3.3) пока конкретный вид оператора Ф не определен.

Задавая различные виды оператора Ф можно полу­чить различные алгоритмы генерации последовательности псевдослучайных чисел [3,5,6,9].

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

3.5. ИМИТАЦИЯ СЛУЧАЙНЫХ СОБЫТИЙ

Предположим, что нам требуется имитация случайного события А, поступающего с заданной вероятностью р . Пусть X - равномерно распределенная в интервале (0,1) случайная величина. Тогда

Аналогично

где - противоположное событие.

Отсюда легко видна схема имитации случайного собы­тия А, реализующего с заданной вероятностью р . Сначала генерируется псевдослучайное число х (реализация случайной величины X), для которого проверяется выполнение неравен­ства x < р. Если это неравенство выполняется, то считается ,

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

Эта схема может быть обобщена на группу событий. Пусть требуется смоделировать полную группу попарно несо­вместных событий А1, А2,..., Аn, вероятности которых

Очевидно, что событие Аk (k=1,п) можно опреде­лить как выполнение неравенство

где X реализация равномерно распределенной в интервале (0,1) случайной величины X . Действительно

Имитируя полную группу, мы считаем события А1,...,Ап несовместными. Рассмотрим теперь способ имита­ции совместных событий, независимых и зависимых..

Допустим, требуется имитация двух совместных неза­висимых событий А12 с вероятностью р1 и р2. Здесь воз­можны два подхода. В первом имитируется два псевдослучай­ных числа Х1 и Х2, с помощью которых независимо друг от друга имитируются два события А1 (по Х1) и А2 (с помо­щью Х2).Тогда если реализация x1 < р1, то произошло А1; если еще х2 < р2 , то и А2; если x1 < p1, но , то А1 ; если , , то ; если , то .

Второй путь предполагает имитацию до ранее приве­денной схеме полной группы попарно несовместных событий

с вероятностями соответственно

P1P2,P1(1-P2),(1-P1)P2,(1-P1)(1-P2)

Аналогичный подход используется в случае, когда со­вместные события А1 и А2, являются зависимыми. В этом случае для их имитаций должны быть заданы три вероятности: р12 и Р(А21). Еще одна вероятность Р(А21) вы­числяется с помощью формулы полной вероятности:

При имитации зависимых событий A1 и А2 тоже существует два подхода. В первом случае генерируются два псевдослучайных числа Х1 и Х2. Если х1 < p1, и х2 <Р(A2/A1), то произошло событие А1А2; если же x1 < p1 и , то - событие ; если и то ; если и то Второй вариант решения предполагает имитацию пол­ной группы попарно несовместных событий с вероятностями соответственно

Первый вариант опять предполагает меньшее число сравнений и в этом смысле является более экономичным.