- •4. Применение имитационного моделирования
- •Лекция 2
- •2. Классификация математических моделей
- •И видов моделирования.
- •Имитационное и статистическое моделирование
- •Лекция 3
- •Лекция 4
- •Лекция 5
- •3. Получение и преобразование случайных чисел Лекция 6
- •Лекция 7
- •Лекция 8
- •Лекция 9
- •Лекция 10
- •Лекция 11
- •Лекция 12
- •Лекция 13
- •4. Применение имитационного моделирования Лекция 14
- •Лекция 15
- •Лекция 16
- •Лекция 17
- •Лекция 18
- •Лекция 19
- •Текст программы
- •Лекция 20
- •Текст программы
- •Экранные формы для ввода исходной информации и вывода результатов моделирования смо
- •5. Сети петри Лекция 21
- •Лекция 22
- •6. Планирование машинных экспериментов Лекция 23
- •Лекция 24
- •7. Языки имитационного моделирования Лекция 25
- •Лекция 26
- •Текст программы
- •Список использованных источников
3. Получение и преобразование случайных чисел Лекция 6
Для реализации метода статистического моделирования требуется большое количество случайных чисел с заданными законами распределения.
Распространены два основных принципа получения случайных чисел. При первом из них случайные числа вырабатываются специальной приставкой (датчиком случайных чисел), сопряжённой с ЭВМ (аппаратурный принцип). Реализация этого принципа почти не требует дополнительных операций ЭВМ, кроме операции обращения к датчику.
Второй принцип – алгоритмический – основан на формировании случайных чисел в самой ЭВМ посредством специальных программ. Недостатком такого метода является дополнительный расход машинного времени.
Программы получения последовательностей случайных чисел с заданными законами распределения могут оказаться достаточно громоздкими. Поэтому случайные числа получают не непосредственно, а путём преобразования случайных чисел, имеющих некоторое исходное – базовое – распределение.
К исходному распределению предъявляются следующие требования:
простота получения чисел с помощью электронных приставок или непосредственно на ЭВМ;
удобство преобразования в распределение с заданным законом.
Считается, что равномерный закон распределения в достаточной степени удовлетворяет этим требованиям.
Напомним свойства равномерного распределения.
Н
епрерывная
случайная величина ξ (x)
имеет равномерное распределение на
отрезке [a,
b],
если её функция плотности распределения
а функция распределения
П
олучить,
однако, точно такое распределение на
ЭВМ невозможно в силу хотя бы того
обстоятельства, что ЭВМ, оперирующая с
n-разрядными
двоичными числами, может формировать
не более, чем 2n
различных чисел. При равномерном же
распределении предполагается, что
бесчисленное множество возможных
значений случайной величины непрерывно
заполняет отрезок [a,
b].
Поэтому вместо непрерывной совокупности
случайных чисел, равномерно распределенных
на отрезке [a,
b],
используется дискретная совокупность
2n
случайных чисел, распределенных на том
же отрезке, имеющих вероятности получения
2−n.
Закон распределения такой совокупности
носит название квазиравномерного закона
распределения. Следует отметить, что
при достаточно большом n
различие между равномерным и
квазиравномерным распределениями можно
считать практически несущественным.
Случайные числа формируются с помощью специальных программ рекуррентным способом, т.е. каждое последующее случайное число получается из предыдущего с помощью определённых преобразований (алгоритмов). Поэтому эти числа называются псевдослучайными.
Таким образом, последовательности квазиравномерных псевдослучайных чисел (ПСЧ) являются вполне детерминированными числами, обладающими статистическими свойствами случайных чисел. Эти свойства подтверждаются путем проверки этих чисел специальными тестами.
Лекция 7
Рассмотрим наиболее распространенные методы получения последовательности квазиравномерных случайных чисел с помощью ЭВМ.
Методы получения последовательностей квазиравномерных псевдослучайных чисел. Рассмотрим простейшие приёмы получения на ЭВМ последовательностей квазиравномерных ПСЧ на отрезке [0,1].
Метод
Неймана (середины квадратов). Пусть
имеется n-разрядное
число x0,
принадлежащее отрезку [0,1]. Это число
возводится в квадрат, т.е. получается
2 n-разрядное
число
.
В нем выделяются средние n
разрядов, слева к которым приписывается
0. Таким образом, получается очередное
число последовательности квазиравномерных
ПСЧ x1,
которое затем возводится в квадрат и
так далее.
Пример.
Пусть
=
0,0713, тогда
= 0,00508369. Отбрасывая крайние два символа
(после запятой и в самом конце), получаем
x1 =
0,5083. Аналогично получаем x2
= 0.8368 и т.д..
Мультипликационный метод. Получение последовательностей квазиравномерных ПСЧ по этому методу происходит на основе рекуррентного соотношения
,
где
;
t
– целое положительное число; операция
означает взятие целой части числа.
Пример.
Пусть x0 = 0,37843,
t = 5,
Тогда x1 = k x0 − [k x0] =
= 0,00191
– второе число последовательности
квазиравномерных ПСЧ.
Метод произведений. Пусть имеется два числа x0 и x1, у которых число знаков после запятой одинаково и равно n.
В
результате перемножения этих чисел
получается число
.
После выделения из
n
средних цифр и приписывания слева нуля
имеем число x2 < 1.
Последующее числа получаются аналогичным
образом.
Мультипликативный конгруэнтный метод (метод вычетов). Полученные, с помощью идеального генератора, последовательности чисел должны состоять:
из равномерно распределённых чисел;
из статистически независимых чисел;
из воспроизводимых чисел;
из неповторяющихся чисел.
Кроме того генератор чисел должен работать быстро и занимать минимальный объём памяти ЭВМ.
Всей совокупности перечисленных выше требований лучше, чем другие методы генерирования случайных чисел, удовлетворяют так называемые конгруэнтные методы, к числу которых относится и метод вычетов.
В методе вычетов используется соотношение
где
запись
означает остаток от деления
на
При
этом
представляется
в виде q = 10 d.
Выбирая соответствующим образом
и
,
можно получить хорошее качество
последовательностей квазиравномерных
ПСЧ, распределенных на отрезке [0,1].
Пример. Для получения хорошего качества последовательностей квазиравномерных ПСЧ рекомендуется брать α0 = 3141592, q = 10 d, d = 8, k = 200 t ± p. Здесь t – любое целое число, p – берется из набора чисел 3, 11, 13, 19, 21, 27, 29, 37, 53, 59, 61, 67, 69, 77, 83 и 91.
Пусть t = 0, p = 91. Тогда k = ± 91. Положим k = 91.
В этом
случае
будет равно остатку от деления
т.е.
Поставив
запятую слева от найденного числа
,
будем иметь первое число последовательности
Аналогично
будет равно остатку от деления
т.е.
Поставив
запятую слева от
,
получим второе число последовательности
и т.д.
Максимальный
период повторения чисел равен
.
Метод Лемера. Получение последовательности квазиравномерных ПСЧ этим методом осуществляется на основании того же соотношения, что и в методе вычетов, но q равно не 10d, а 2d, т.е. метод Лемера предназначен для работы в двоичной системе счисления.
В этом случае максимальный период повторения чисел равен 2 d−2.
Проверка
качества последовательностей
квазиравномерных псевдослучайных
чисел. Качество
и эффективность машинной имитации
существенным образом зависят от того,
насколько удачно выбран вид рекуррентного
соотношения
,
для получения ПСЧ. Так как это соотношение
выбирается эмпирически, то необходимо
убедиться, что ПСЧ последовательности
принадлежат отрезку [0, 1] и удовлетворяют
требованиям стохастичности и равномерности.
Для этого обычно используются:
Проверка по моментам распределения полученных чисел. Если генерируемые ПСЧ близки к случайным числам, равномерно распределенным на отрезке [0,1], то оценки их математического ожидания
и дисперсии
Проверка на равномерность полученных чисел по гистограмме. Отрезок [0, 1] разбивается на m равных частей (интервалов). При генерации каждое из чисел
с вероятностью
попадёт в один из этих интервалов.
Всего
в каждый j - й
интервал попадёт Nj
чисел последовательности,
Относительная
частота попадания случайных чисел в
каждый из интервалов
Необходимо
построить гистограмму Pi
= f
(xi).
Если случайные числа xi
принадлежат последовательности
квазиравномерных ПСЧ, то при достаточно
больших N
гистограмма
должна приближаться к теоретической
прямой
Обычно полагают
,
а
