Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекций Моделирование систем.doc
Скачиваний:
52
Добавлен:
15.04.2019
Размер:
1.38 Mб
Скачать

5.2.Требования к генератору случайных чисел

Существует три типа генераторов: табличный, физический и программный.

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

  1. нехватки табличных случайных чисел;

  2. большой расход оперативной памяти ЭВМ для хранения таблицы.

Физический датчик — это специальное радиоэлектронное устройство, являющееся приставкой к ЭВМ, выходной сигнал которой имитирует БСВ. Недостатки физического датчика:

  1. невозможность повторения некоторой ранее полученной реализации;

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

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

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

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

  2. генерируется достаточное количество неповторяющихся чисел, т.е. период (цикл) генератора довольно длинный;

  3. последовательность случайных чисел воспроизводима (это предполагает, что различные начальные значения дают различные последовательности);

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

  5. желательно использование малого объема памяти.

Таким образом, алгоритмический способ получения БСВ наиболее рационален на практике при моделировании систем на ЭВМ.

5.3.Методы построения программных датчиков бсв

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

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

k

M

T

32

65539

16

259

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

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

Для проверки качества серии квазиравномерных псевдослучайных чисел используются различные системы проверочных тестов. Одним из них является тест частот. Отрезок от 0 до 1 разбивается на m (обычно 10 – 20) равных интервалов. Полученные эмпирические частоты ( ) сравниваются с теоретическими вероятностями . Согласие проверяется по критерию , так как статистическая функция

подчиняется распределению с степенями свободы, где N — объем выборки.