
- •1.1. Основные особенности моделирования систем с учетом реальных условий их применения
- •1.2. Основные свойства и характеристики моделей
- •1.3. Особенности моделирования и испытаний сложных систем
- •1.4. Показатели эффективности систем
- •2. Классификация моделей систем управления
- •2.1. Классификация моделей по способу физической реализации
- •2.2. Классификация моделей по форме математического описания
- •2.3. Детерминированные конечные автоматы и их применение при построении моделей сложных систем
- •2.4. Вероятностные автоматы и марковские цепи
- •2.5. Модели с дискретными состояниями и непрерывным временем
- •2.6. Алгоритмы реализации моделей
- •3. Метод статистического моделирования
- •3.1. Теоретические основы метода статистического моделирования
- •3.2. Понятие оценки. Свойства оценок
- •3.3. Точность оценок и определение необходимого количества опытов
- •Доверительные вероятности и доверительные интервалы
- •3.4. Пример использования метода Монте-Карло
- •3.5. Способы построения генераторов случайных чисел
- •3.5.1. Аппаратные способы построения генераторов случайных чисел
- •3.5.2. Программные способы построения генераторов случайных чисел
- •3.6. Методы восстановления закона распределения по результатам статистического моделирования
- •3.6.1. Параметрические методы восстановления закона распределения
- •3.6.2. Непараметрические методы восстановления закона распределения
- •3.7. Критерии согласия теоретического и выборочного законов распределения
- •3.7.1. Критерий согласия Пирсона
- •3.7.2. Критерий согласия Колмогорова
- •3.7.3. Другие задачи проверки статистических гипотез, виды критериев и
- •3.8. Пример статистической имитационной модели системы со случайными параметрами
- •3.9. Моделирование случайных векторов
- •3.9.1. Метод условных распределений
- •3.9.2. Методы преобразования случайных координат
- •3.9.3. Метод Неймана
- •4. Математическое моделирование случайных процессов в системах управления
- •4.1. Основные формы описания непрерывных случайных процессов
- •4.2. Спектральный метод расчета установившегося случайного процесса в линейной стационарной системе
- •4.3. Статистическая линеаризация нелинейной стационарной системы
- •4.4. Расчет установившегося случайного процесса в нелинейной стационарной системе
- •4.5. Определение характеристик нестационарных случайных процессов методом весовых функций
- •4.6. Моделирование нестационарных случайных процессов в линейных системах методом динамики средних
- •4.7. Моделирование нестационарных случайных процессов в нелинейных системах методом динамики средних
- •4.8. Построение моделей случайных процессов в дискретных системах
- •4.9. Методы моделирования случайных процессов с заданными характеристиками
- •4.9.1. Метод формирующего фильтра
- •4.9.2. Метод скользящего суммирования
- •4.9.3. Особенности практической реализации генераторов случайных процессов
- •4.10. Пример статистической имитационной модели системы со случайными параметрами при действии случайной помехи
- •5. Способы снижения трудоемкости статистического моделирования
- •5.1. Основные методы уменьшения дисперсии оценки
- •5.1.1. Метод выделения главной части
- •5.1.2. Метод существенной выборки
- •5.1.3. Метод расслоенной выборки (выборка по группам)
- •5.2. Комбинированные методы получения оценок
- •5.2.1. Оценка статистической характеристики сложной
- •5.2.2. Оценка статистической характеристики системы на основе
- •Содержание
- •Методы моделирования стохастических систем управления
- •198005, С.-Петербург, 1-я Красноармейская ул., д. 1
3.5.2. Программные способы построения генераторов случайных чисел
Программные генераторы случайных чисел обеспечивают получение только псевдослучайных последовательностей со всеми указанными выше недостатками. Общий принцип построения программных генераторов состоит в том, что на первом этапе имитируется равномерный закон распределения в интервале [0; 1], а затем полученная последовательность преобразуется для обеспечения требуемых характеристик. Рассмотрим ряд способов построения программных генераторов.
1. Получение равномерного закона в интервале [0; 1] обеспечивается на основе использования рекуррентных соотношений различного вида, например:
,
i=1,2,...,
где a,b - положительные числа, m=2l, l - разрядность представления целого числа в ЦВМ. Генераторы, или датчики, случайных чисел с равномерным законом распределения имеются в виде встроенных процедур во всех языках программирования, позволяющих решать вычислительные задачи. Существует ряд способов проверки качества таких генераторов [23, 37]. Но прежде всего при выборе программных средств для статистического моделирования следует обратить внимание на способ начальной установки генератора и возможности ее изменения.
2. Метод обратных функций, обеспечивающий получение заданного закона распределения, основан на использовании известного результата теории вероятностей: независимо от вида непрерывного закона распределения при известных его ПРВ f(x) и ФРВ F(x) случайная величина
(3.25)
распределена по равномерному закону в интервале [0; 1].
Действительно, в
соответствии с (3.25) значения x
и R связаны
взаимно однозначной зависимостью.
Поэтому для любых A
и B
,
(3.26)
что является свойством равномерного закона распределения.
Если удается получить аналитическое выражение для функции F-1(R), обратной ФРВ F(x), процедура генерирования случайных чисел xi будет выглядеть следующим образом:
а) с помощью стандартного генератора получают равномерно распределенные в интервале [0; 1] числа i;
б) числа xi получают по формуле xi=F-1(i).
Например, для экспоненциального закона распределения (x>0)
f(x)=e-x,
F(x)=1-e-x,
.
Рассмотренный способ позволяет получать любой непрерывный закон распределения, если только существует аналитическое выражение для F(x) и может быть получена в аналитическом виде обратная функция.
3. Для нормального закона распределения аналитического выражения для ФРВ не существует. Простейший способ получения случайных чисел с нормальным законом распределения основан на центральной предельной теореме. В соответствии с ней среднее арифметическое n равномерно распределенных в интервале [0; 1] случайных чисел имеет асимптотически нормальный закон распределения с математическим ожиданием 0,5 и дисперсией
.
На практике это в достаточной степени подтверждается при n=12.
Поэтому процедура получения нормального закона выглядит следующим образом:
а) с помощью стандартного генератора получают 12 равномерно распределенных в интервале [0; 1] чисел i;
б) числа xi со стандартизованным нормальным законом распределения получают по формуле, являющейся следствием (3.5):
,
.
Для сокращения трудоемкости этот способ иногда применяют с n=6.
Отметим, что рассмотренным способом не обеспечивается свойственный нормальному закону неограниченный диапазон распределения генерируемых чисел.
От указанного недостатка свободна, например, следующая процедура:
а) с помощью стандартного генератора получают два равномерно распределенных в интервале [0; 1] числа i и i+1;
б) вычисляют V1=2i–1, V2=2i+1–1, s=V12+V22;
в) если
,
повторяют пункты а) и б);
г) вычисляют
и получают два распределенных по
стандартизованному нормальному закону
числа xj
=V1r,
xj+1=V2r.
4. Для произвольных законов распределения, не допускающих аналитического получения ФРВ, существует универсальный способ (рис. 25), основанный на кусочной аппроксимации функции ПРВ. Рассмотрим его на примере усеченного закона распределения, когда f(x)=0 за пределами отрезка [xmin; xmax]. Разобьем указанный отрезок на m=2l, (l - целое) интервалов таким образом, чтобы вероятность попадания x в каждый интервал была одинаковой:
,
j=1,2,...m;
a1=xmin,
am+1=xmax.
В пределах каждого интервала ПРВ аппроксимируется константой:
,
j=1,2,...m.
Процедура формирования случайных чисел в соответствии с заданной ПРФ f(x) выглядит следующим образом:
а) с помощью стандартного генератора получают равномерно распределенное в интервале [0; 1] число 2i-1;
б) по первым l разрядам 2i-1 выбирают номер интервала j;
в) получают следующее значение 2i;
г) значение xi вычисляют по формуле xi=aj+(aj+1-aj)2i.
Рассмотренный способ обеспечивает получение псевдослучайных чисел с любыми непрерывными или кусочно-непрерывными законами распределения, в том числе задаваемыми таблично. Его недостатками являются сравнительно большие объемы подготовительной работы и используемой оперативной памяти ЭВМ.
5. Отметим другой универсальный способ построения генератора случайных чисел с заданной ПРВ усеченного закона распределения (рис. 26), также часто называемый в литературе методом Неймана. Он предусматривает следующую процедуру обеспечения заданной ПРВ f(x):
а) с помощью стандартного генератора получают пары равномерно распределенных в интервале [0; 1] чисел 2i-1 и 2i;
б) выполняют их преобразование:
xi=xmin+(xmax–xmin)2i-1, yi=fmax2i; (3.27)
в) в качестве генерируемых значений случайной величины x выбирают значения xi из тех пар xi и yi, для которых выполняется неравенство
.
(3.28)
Покажем справедливость данного способа, применительно к его реализации на ЦВМ. Будем рассматривать для каждого xi элементарную полосу шириной , в пределы которой с учетом разрядности используемой ЦВМ другие значения x попасть не смогут. Величина достаточно мала, чтобы при законе распределения с ПРВ f(x) вероятность x=xi можно было считать пропорциональной f(xi). С учетом свойства равномерного закона (3.26) нетрудно убедиться, что это и будет обеспечиваться при достаточно большой длине генерируемой последовательности на основе условия (3.28).
Преимущество рассмотренного способа - минимальный объем подготовительной работы. Тем не менее он не получил широкого практического применения из-за низкого быстродействия, обусловленного большой долей “безрезультатных” вычислений. Применение этого способа можно порекомендовать только для более сложных задач моделирования случайных векторов со статистически зависимыми составляющими, которые будут рассмотрены в подразд. 3.9.
6. Для формирования случайных чисел с дискретным законом распределения используется выражаемое соотношением (3.26) свойство непрерывного равномерного закона.
Пусть требуется
построить генератор дискретной случайной
величины Z,
имеющей n
возможных значений z1,z2,…,zn.
Закон распределения Z
задается в табличном виде или в виде
ряда
,
где pj=P(Z
= zj),
причем
.
(3.29)
Соотношение (3.26)
позволяет установить соответствие
между значениями непрерывной случайной
величины
с равномерным законом распределения в
интервале [0; 1]
и значениями дискретной случайной
величины Z
следующим образом. Разобьем интервал
[0; 1] на n
непересекающихся последовательных
отрезков j,
выбрав длину каждого из них равной
aj–aj-1=pj.
В соответствии с (3.29) эти отрезки полностью
займут весь интервал [0;
1] (рис. 27), причем их границы будут
определяться соотношениями:
.
Теперь достаточно принять Z=zj, если значение случайной величины попадает в пределы отрезка [aj-1; aj]. Соответствующая процедура получения дискретного закона распределения выглядит следующим образом:
а) с помощью стандартного генератора получают равномерно распределенное в интервале [0; 1] число i;
б) определяют номер
j отрезка
j
из условия
;
в) случайной величине Z присваивают значение zj.
В заключение отметим, что широкий набор разработанных к настоящему времени способов построения генераторов случайных чисел, безусловно, не исчерпывается рассмотренным перечнем. Так для получения нормального и ряда других важных для практических приложений законов распределения в литературе [1, 7, 17, 23, 28, 36, 41, 44, 46] предлагается большой выбор различающихся по точности и трудоемкости специальных способов.