Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПОСОБИЕ НОВОЕ ИмитацияСлучайныхОбъектов.doc
Скачиваний:
77
Добавлен:
01.03.2016
Размер:
861.18 Кб
Скачать
    1. Сложный метод

Сложный метод основан на применении следующих формул

;

;

.

Здесь используются следующие переменные:

- a0, a1, b0, b1, c0, c1 ­ целые положительные коэффициенты;

- Zt1, Zt2 , Z01, Z11, Z02, Z12 вспомогательные целые числа;

- xi рассчитываемые квазиравномерные числа.

В качестве параметров задаются значения a0, a1, b0, b1, c0, c1, Z01, Z02 .

Алгоритм имитации квазиравномерных чисел сводится к выполнению следующих операций:

1. Выбираются произвольные целые положительные числа в качестве значения a0, a1, b0, b1, c0, c1 .

2. Выбираются произвольные целые положительные числа в качестве начального значения Z01, Z02 , вычисляются значения Z11 = Z01 и Z12 = Z02.

3. Вычисляются значения Zt1, Zt2 по формулам:

,

.

4. Вычисляется искомое промежуточное значение x1 по формуле

xi = (|Zt1 – Zt2|) mod c0.

5. Полученное значение приводится к вещественному из интервала (0; 1), то есть вычисляется квазиравномерное значение x10..1 = x1 / c0 .

6. Модифицируются значения Z01 = Z11, Z11 = Zt1, Z02 = Z12,  Z12 = Zt2.

7. Возврат на пункт 3.

Пример использования алгоритма.

1. Выбираются значения параметров a0 = 14, a1 = 5, b0 = 81, b1 = 139, c0 = 4294, c1 = 9494.

2. Задаются Z01, Z02 , вычисляются Z11 = Z01 и Z12 = Z02 как Z01 = Z11 = 13511, Z02 = Z12 = 1477.

3. Вычисляются значения Zt1, Zt2 как

Z t1 = ( | 14∙13511 - 81∙13511 | ) mod 4294 = 3497,

Z t2 = ( | 5∙1477 - 139∙1477 | ) mod 9494 = 8038.

4. Вычисляется значение x1 по формуле ( | 3497 – 8038 | ) mod 4294 = 247.

5. Определяется x10..1 = 247 / 4294 = 0,05752212.

6. Модифицируются значения Z01 = 13511, Z11 = 3497, Z02 = 1477,  Z12 = 8038.

7. Возврат на пункт 3.

Указанным образом может быть получено необходимое количество значений квазиравномерной величины. Ниже для выбранных в примере исходных установок представлены результаты имитации первых значений последовательности:

  1. Алгоритмы получения случайных чисел с заданным распределением

Случайные числа с заданным распределением программно имитируются на базе использования квазиравномерных случайных чисел R. Существует много вычислительных процедур, позволяющих имитировать как непрерывные так и дискретные вероятностные распределения, заданные плотностью распределения f(x) либо функцией распределения F(x).

Для имитации случайных величин широко применяется метод обратных функций. Пусть требуется имитировать значения случайной величины Х с функцией распределения F(x). Доказано, что, если значения квазиравномерных чисел R брать в качестве значений функции распределения , то соответствующие им значения x аргумента функции F(x) (значения обратной функции)образуют выборку чисел, распределенных в соответствии с законом F(x).

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

Схема генерации значений случайной величины для случая, когда указанное уравнение не удается решить, иллюстрируется на рисунке 1. На рисунке показана функция распределения дискретной случайной величины Х (). Действительно, значениям величины-можно поставить в соответствие вероятности, рассчитанные по значениям функции распределения как=-.

Указанные значения образуют полную группу событий , …,, а задача генерации сводится к задаче моделирования полной группы независимых элементарных событий и графически означает ”набрасывание” значений квазиравномерной случайной величинына отрезок единичной длины по оси0-Y.

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