![](/user_photo/2706_HbeT2.jpg)
- •0. Лекция: Введение
- •1. Лекция: Понятие модели и моделирования:
- •1.1. Общее определение модели
- •1.2. Классификация моделей и моделирования
- •1.2.1. Классификация моделей и моделирования по признаку "характер моделируемой стороны объекта"
- •1.2.2. Классификация моделей и моделирования по признаку "характер процессов, протекающих в объекте"
- •1.2.3. Классификация моделей и моделирования по признаку "способ реализации модели"
- •1.3. Этапы моделирования
- •1.4. Адекватность модели
- •1.5. Требования, предъявляемые к моделям
- •2.1. Дискретные марковские процессы
- •2.2. Моделирование по схеме непрерывных марковских процессов
- •2.3. Схема гибели и размножения
- •2.4. Элементы смо, краткая характеристика
- •2.5. Моделирование смо в классе непрерывных марковских процессов
- •2.5.1. Многоканальная смо с отказами
- •2.5.2. Многоканальная смо с ожиданием
- •2.5.3. Одноканальная смо с ограниченной очередью
- •2.5.4. Одноканальная замкнутая смо
- •2.5.5. Одноканальная смо с конечной надежностью
- •2.6. Метод динамики средних. Сущность и содержание метода
- •2.7. Принцип квазирегулярности
- •2.8. Элементарные модели боя
- •2.8.1. Модель высокоорганизованного боя
- •2.8.2. Высокоорганизованный бой с пополнением группировок
- •2.8.3. Высокоорганизованный бой с упреждением ударов
- •2.8.4. Модель боя с неполной информацией
- •2.8.5. Учет запаздывания в переносе и открытии огня
- •3. Лекция: Статистическое моделирование:
- •3.1. Сущность имитационного моделирования
- •3.2. Общая характеристика метода имитационного моделирования
- •3.3. Статистическое моделирование при решении детерминированных задач
- •3.4. Моделирование равномерно распределенной случайной величины
- •3.5. Моделирование случайной величины с произвольным законом распределения
- •3.6. Моделирование единичного события
- •3.7. Моделирование полной группы несовместных событий
- •3.8. Моделирование совместных независимых событий
- •3.8.1. Определение совместных исходов по жребию
- •3.8.2. Последовательная проверка исходов
- •3.9. Моделирование совместных зависимых событий
- •3.10. Классификация случайных процессов
- •3.11. Способы продвижения модельного времени
- •3.12. Модель противоборства двух сторон
- •3.13. Модель противоборства как процесс блуждания по решетке
- •3.14. Типовая схема имитационной модели с продвижением времени по событиям
- •3.15. Имитационная модель системы массового обслуживания
- •4. Лекция: Планирование экспериментов
- •4.1. Сущность и цели планирования эксперимента
- •4.2. Элементы стратегического планирования экспериментов
- •4.3. Стандартные планы
- •4.4. Формальный подход к сокращению общего числа прогонов
- •4.5. Элементы тактического планирования
- •4.6. Точность и количество реализаций модели при определении средних значений параметров
- •4.6.1. Определение оценки матожидания
- •4.6.2. Определение оценки дисперсии
- •4.7. Точность и количество реализаций модели при определении вероятностей исходов
- •4.8. Точность и количество реализаций модели при зависимом ряде данных
- •4.9. Проблема начальных условий
- •5. Лекция: Обработка результатов имитационного эксперимента
- •5.1. Характеристики случайных величин и процессов
- •5.2. Требования к оценкам характеристик
- •5.3. Оценка характеристик случайных величин и процессов
- •5.4. Гистограмма
- •5.4. Элементы дисперсионного анализа. Критерий Фишера
- •5.6. Критерий Вилькоксона
- •5.7. Однофакторный дисперсионный анализ
- •5.8. Выявление несущественных факторов
- •5.9. Сущность корреляционного анализа
- •5.10. Обработка результатов эксперимента на основе регрессии
- •6. Лекция: Моделирование в gpss World
- •6.1. Основы построения и принципы функционирования языка имитационного моделирования
- •6.2. Построение моделей с устройствами
- •6.2.1. Организация поступления транзактов в модель и удаления транзактов из нее
- •6.2.1.1. Поступление транзактов в модель
- •6.2.1.2. Удаление транзактов из модели и завершение моделирования
- •6.2.1.3. Изменение значений параметров транзактов
- •6.2.2. Занятие и освобождение одноканального устройства
- •6.2.3. Имитация обслуживания посредством задержки во времени
- •6.2.4. Проверка состояния одноканального устройства
- •6.2.5. Методы сбора статистики в имитационной модели
- •6.2.5.1. Регистратор очереди
- •6.2.5.1. Статистические таблицы
- •6.2.6. Методы изменения маршрутов движения транзактов в модели
- •6.2.6.1. Блок transfer
- •6.2.6.2. Блок displace
- •6.2.7. Прерывание функционирования одноканального устройства
- •6.2.7.1. Прерывание в приоритетном режиме
- •6.2.7.2. Прерывание в режиме "захвата"
- •6.2.7.3. Проверка состояния одноканального устройства, функционирующего в приоритетном режиме
- •6.2.8. Недоступность одноканального устройства
- •6.2.8.1. Перевод в недоступное состояние и восстановление доступности
- •6.2.8.2. Проверка состояний недоступности и доступности одноканального устройства
- •6.2.9. Сокращение машинного времени и изменение дисциплин обслуживания методом применения списков пользователя
- •6.2.9.1. Ввод транзактов в список пользователя в безусловном режиме
- •6.2.9.2. Вывод транзактов из списка пользователя в условном режиме
- •6.2.10. Построение моделей систем с многоканальными устройствами и переключателями
- •6.2.10.1. Занятие многоканального устройства и его освобождение
- •6.2.10.2. Перевод многоканального устройства в недоступное состояние и восстановление его доступности
- •6.2.10.3. Проверка состояния многоканального устройства
- •6.2.10.4. Моделирование переключателей
- •6.3. Решение прямой и обратной задач в системе моделирования
- •6.3.1. Постановка прямой и обратной задач
- •6.3.2. Решение прямой задачи
- •6.3.2.1. Блок-диаграмма модели
- •6.3.2.2. Программа модели
- •6.3.2.3. Ввод текста программы модели, исправление ошибок и проведение моделирования
- •6.3.3. Решение обратной задачи
- •6.4. Пример построения моделей с оку, мку и списками пользователя
- •6.4.1. Модель процесса изготовления изделий на предприятии. Прямая задача
- •6.4.1.1. Постановка задача
- •6.4.1.2. Исходные данные
- •6.4.1.3. Задание на исследование
- •6.4.1.4. Уяснение задачи на исследование
- •6.4.1.5. Блок-диаграмма модели
- •6.4.1.6. Программа модели
- •6.4.2. Модель процесса изготовления изделий на предприятии. Обратная задача
- •6.4.2.1. Постановка задачи
- •6.4.2.2. Программа модели
- •6.5. Уменьшение числа объектов в модели
- •6.5.1. Постановка задачи
- •6.5.2. Исходные данные
- •6.5.3. Задание на исследование
- •6.5.4. Блок-диаграмма модели
- •6.5.5. Программа модели
- •6.6. Применение матриц, функций и изменение версий модели
- •6.6.1. Постановка задачи бизнес-процесса
- •6.6.2. Уяснение задачи
- •6.6.3. Программа модели
- •6.7. Моделирование неисправностей одноканальных устройств
- •6.7.1. Постановка задачи
- •6.7.2. Исходные данные
- •6.7.3. Задание на исследование
- •6.7.4. Уяснение задачи
- •6.7.5. Программа модели
- •6.8. Моделирование неисправностей многоканальных устройств
- •6.8.1. Постановка задачи
- •6.8.2. Программа модели
- •7. Лекция: Организация компьютерных экспериментов
- •7.1. Дисперсионный анализ (отсеивающий эксперимент). Прямая задача
- •7.2. Регрессионный анализ (оптимизирующий эксперимент). Прямая задача
- •7.3. Дисперсионный анализ (отсеивающий эксперимент). Обратная задача
- •7.3.1. Постановка задачи
- •7.3.2. Исходные данные
- •7.3.3. Задание на исследование
- •7.3.4. Уяснение задачи на исследование
- •7.3.5. Программа модели
- •7.3.6. Проведение экспериментов
- •8. Лекция: Разработка имитационных моделей в виде приложений с интерфейсом
- •8.1. Применение текстовых объектов и потоков данных
- •8.1.1. Блок open
- •8.1.2. Блок close
- •8.1.3. Блок read
- •8.1.4. Блок write
- •8.1.5. Блок seek
- •8.2. Разработка модели в gpss World
- •8.2.1. Постановка задачи
- •8.2.2. Программа модели
- •8.3. Создание стартовой формы приложения - имитационной модели
- •8.3 Добавление компонент в стартовую форму имитационной модели
- •8.3.1. Добавление полей редактирования
- •8.3.2. Добавление меток
- •8.3.3. Добавление компонент для ввода и вывода данных, представленных в виде таблиц
- •8.3.4. Добавление командных кнопок
- •8.4. События и процедуры обработки событий
- •8.4.1. События
- •8.4.2. Разработка процедур обработки событий для кнопок
- •8.4.3. Разработка процедур обработки событий для полей редактирования
- •8.4.4. Модификация программы имитационной модели
- •8.5. Работа с приложением
3.4. Моделирование равномерно распределенной случайной величины
Особое значение в статистическом моделировании имеет непрерывная равномерно распределенная случайная величина. Особая значимость этой случайной величины объясняется тем, что, во-первых, она сама по себе необходима для моделирования случайных процессов и величин и, во-вторых, случайные величины с другими законами распределения формируются на их основе.
Определение.
Непрерывная случайная величина
имеет
равномерное распределение в интервале
,
если ее плотность вероятности
определяется
так (рис.
3.9):
Рис. 3.9. Плотность вероятности равномерного распределения
Значения характеристик равномерного закона распределения:
математическое ожидание
;
дисперсия
.
При моделировании часто используются случайные числа из интервала . Непрерывная случайная величина равномерно распределена в интервале , если:
В
этом случае
.
Случайное
число
из
интервала
легко
преобразуется в случайное число
для
интервала
:
Применительно к двоичным дробям случайное число из интервала представляет собой бесконечную дробь:
Очевидно,
реализовать такую дробь в компьютере
невозможно, так как разрядная сетка
компьютера ограничена. В компьютере
можно формировать дискретные
последовательности случайных чисел,
которые не могут отличаться друг от
друга только на величину меньше
(
-
число разрядов в сетке компьютера). То
есть непрерывного, "теоретического"
распределения на компьютерах получить
нельзя. Если эти числа равновероятны,
то такое распределение случайных чисел
называют квазиравномерным.
Заметим, что непрерывные случайные величины существуют только в теории. На практике все случайные величины дискретны и шаг дискретности равен наименьшей единице измерения.
Случайная
величина
,
имеющая квазиравномерное распределение
в интервале
,
принимает значения
с
вероятностями
.
Можно показать, что эта случайная величина имеет характеристики:
|
(2^n-1)}) |
Современные
компьютеры имеют разрядность не менее
32. Следовательно,
,
а дисперсии тоже практически совпадают.
Учитывая это, в дальнейшем квазиравномерное
распределение будем называть равномерным
и обозначать:
.
Для формирования последовательности случайных чисел в компьютере может использоваться один из трех основных способов:
аппаратный (физический);
табличный (файловый);
алгоритмический (программный).
Аппаратный способ. При этом способе случайные числа формируются специальным устройством. Источником случайных чисел чаще всего являются шумы в электронных приборах. Временные расстояния между шумовыми всплесками, превышающими подобранный уровень ограничения, фиксируются как случайные числа из распределения .
Преимущества такого способа:
количество случайных чисел неограниченно;
не требует затрат оперативной памяти;
требует малые вычислительные ресурсы компьютера.
Однако, такой датчик (генератор) случайных чисел имеет существенные недостатки, которые в настоящее время исключили его из инженерной практики:
трудность настройки;
необходимость периодической проверки формируемой последовательности на соответствие закону распределения;
обеспечение стабильности условий работы устройства - питания, влажности, температуры, старения приборов и элементов;
при необходимости невозможно повторить эксперимент при одной и той же последовательности случайных чисел.
Табличный способ. Случайные числа в виде таблицы (файла) помещаются в оперативную или внешнюю память компьютера. Эти числа формируются заранее или берутся из соответствующего справочника. Достоинствами такого способа являются:
числа требуют однократную проверку при формировании или недоверии источнику;
можно повторять вычислительный эксперимент при одной и той же последовательности случайных чисел.
Недостатки же очень существенны:
количество случайных чисел ограничено;
файл занимает место в оперативной памяти компьютера;
при размещении во внешней памяти обращение за случайными числами увеличивает время моделирования.
Алгоритмический способ. При этом способе случайные числа формируются с помощью специальных алгоритмов (формул) и реализующих их программ при каждом обращении моделирующего алгоритма за случайным числом. Достоинства способа:
в настоящее время предлагается достаточно алгоритмов, генерирующих случайные числа, проверенных практикой и, следовательно, не нуждающихся в особых проверках;
можно многократно воспроизвести одну и ту же последовательность;
в памяти компьютера хранится только программа датчика (генератора), занимающая, как правило, малый объем;
алгоритмический датчик может быть реализован и аппа-ратно, за счет чего существенно сокращается время формирования случайного числа и в целом время моделирования.
Недостатки:
на формирование случайного числа при программной реализации датчика требуются затраты машинного времени;
любой алгоритмический датчик может сгенерировать ограниченное количество неповторяющихся чисел.
В настоящее время практически везде применяются алгоритмические датчики случайных чисел (ДСЧ). Создание высокопроизводительных компьютеров существенно снижает роль первого недостатка (затраты машинного времени). Второй недостаток устраняется использованием в одной модели нескольких ДСЧ.
Алгоритмические датчики не обеспечивают получение теоретически "чистой" случайности чисел, так как их формирование идет по формулам. Вследствие этого, рано или поздно последовательность случайных чисел станет повторяться или выродится. Последнее означает, что, начиная с некоторого числа, все последующие числа будут равны нулю.
Поэтому алгоритмические датчики называют датчиками псевдослучайных чисел. Современные датчики вырабатывают числа, псевдослучайность которых практически неощутима.
Качество алгоритмического датчика оценивается тем, насколько полно он удовлетворяет следующим требованиям:
закон распределения формируемых чисел должен быть равномерным (квазиравномерным);
числа должны быть статистически независимыми;
числа не должны повторяться;
формирование чисел должно занимать минимальное машинное время и минимальный объем памяти.
Понимая, что алгоритмический ДСЧ выдает детерминированную, псевдослучайную последовательность квазиравномерно распределенных случайных чисел, в дальнейшем будем называть его датчиком случайных равномерно распределенных чисел.
Исторически первым таким датчиком является датчик, в котором был реализован так называемый "способ срединных квадратов". Сущность способа заключается в следующем:
подбирается начальное число
, например,
;
вычисляется квадрат :
;
первое случайное число
, то есть середина
;
вычисляется квадрат :
;
второе случайное число
и т. д.
Такие
ДСЧ теперь не используются: между числами
имеется сильная корреляция, случайность
отсутствует, при неудачно
выбранном
последовательность
может быстро выродится, то есть
при
.
В настоящее время очень широкое распространение в практике моделирования получил мультипликативный метод формирования случайной последовательности:
где
-
произвольное нечетное число,
неотрицательное;
-
коэффициент,
,
-
любое целое положительное число;
-
значение модуля. Для реализации на
компьютере удобно
,
где
-
основание системы счисления (2 или
10),
-
число разрядов в случайном числе.
В
этом случае взятие числа по модулю
сводится к выделению
младших
разрядов произведения
.
Алгоритм мультипликативного метода
Выбрать , например,
.
Вычислить коэффициент . Пусть
, тогда
.
Выбрать модуль . Пусть система счисления десятичная (
), разрядность случайных чисел
.
Вычислить произведение
:
.
Найти остаток от деления по модулю :
.
Найти число последовательности случайных чисел из интервала :
.
Присвоить
и перейти к п. 4.
Рассмотренный метод обеспечивает приемлемое качество случайных чисел в смысле равномерности распределения и их независимости, а также простой реализации на компьютере.
Применяется и немного более сложный алгоритм:
где - неотрицательное целое число.
Такой метод называется конгруэнтно-мультипликативным. При удачном подборе дополнительного параметра корреляция
формируемых чисел может быть несколько уменьшена по сравнению с мультипликативным методом.