
- •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. Работа с приложением
2.6. Метод динамики средних. Сущность и содержание метода
В многоэлементных системах часто целью моделирования является определение средних количеств элементов, находящихся в одинаковых состояниях.
Например, в задаче о пеленгации передатчиков противника командира интересует число запеленгированных передатчиков, а не вероятности пеленгации одного передатчика, двух, трех и т. д. Но чтобы определить среднее число их, надо знать вероятности всех возможных состояний , так как
Но число состояний и, следовательно, число уравнений Колмогорова может оказаться настолько большим, что вызовет непреодолимые трудности при моделировании по схеме марковских процессов.
Например, в соединении имеется 100 радиостанций. Каждая из них может находиться в боевых условиях в пяти состояниях:
- исправна, работает, не обнаружена;
- исправна, работает, обнаружена;
- работоспособна, но подавлена помехами;
- обнаружена, поражена;
-
находится в ремонте;
Для
определения средних численностей
каждого из этих состояний пришлось бы
составить
уравнений
Колмогорова. Очевидно, такое моделирование
не годится.
В исследовании операций есть метод, позволяющий успешно решать такие и аналогичные задачи. Этот метод называется метод динамики средних.
Метод динамики средних позволяет непосредственно определять математическое ожидание числа элементов сложной системы, находящихся в одинаковых состояниях.
Метод дает приближенные результаты. Но обладает замечательным свойством: чем больше система имеет элементов и состояний, тем точнее результат математического моделирования.
Для получения расчетных формул метода предположим, что имеем дело с системой, обладающей следующими признаками:
в системе протекает случайный марковский процесс;
элементы системы однородны в том смысле, что состояния, их число и их вероятности - одинаковые;
элементы меняют состояния независимо друг от друга.
Цель
моделирования: определить средние
количества элементов (математические
ожидания)
,
находящихся в одинаковых состояниях
,
и дисперсию
.
Схематично такая система может быть представлена так, как показано на рис. 2.15.
Система
имеет
элементов,
а каждый элемент имеет
состояний.
Численность
-го
состояния на любой момент времени -
величина случайная. Обозначим ее
.
Матожидание и дисперсия этой случайной
величины:
В дальнейшем для лучшей обозримости формул аргумент писать не будем:
Рис. 2.15. Схематичное представление системы
Введем
переменную
так
что:
Отсюда
следует, что случайная величина
равна:
В силу однородности элементов и независимости состояний случайная величина имеет биномиальное распределение (распределение Бернулли) с матожиданием и дисперсией соответственно:
или окончательно
Равенство
связывает
вероятность
-го
состояния элемента в произвольный
момент времени с матожиданием численности
этих состояний по всем элементам.
Определять значения для одного элемента мы умеем. Для этого достаточно составить систему уравнений Колмогорова и решить ее.
Вспомним,
что система уравнений Колмогорова для
одного элемента содержит
уравнений,
а для всех
элементов
-
,
то есть в
раз
меньше. В этом и состоит выигрыш, который
дает применение метода динамики средних.
Порядок моделирования с использованием метода динамики средних заключается в следующем.
Описать состояния одного элемента системы.
Составить размеченный граф состояний для одного элемента, указав рядом с каждым состоянием
средние численности состояний
, полученные умножением
.
Составить дифференциальные уравнения (ДУ) по следующим правилам:
производная средней численности состояния равна сумме стольких членов, сколько стрелок связано с данным состоянием;
если стрелка направлена из состояния, член имеет знак минус, если в состояние - знак плюс;
каждый член равен произведению интенсивности потока событий, переводящего элемент по данной стрелке, на среднюю численность того состояния, из которого исходит стрелка.
Решить систему дифференциальных уравнений относительно
.
Вычислить значения дисперсий
и средних квадратических отклонений
.
Поскольку
процессы в элементах - марковские, то
справедливы все рассуждения об
установившихся значениях
,
об условиях существования установившихся
значений
.
Полученные
уравнения для
называют
уже не уравнениями Колмогорова,
а уравнениями
динамики средних. Поскольку
они получаются из уравнений Колмогорова
путем умножения всех членов на постоянное
число
,
то их можно писать сразу для средних
численностей состояний
по
образцу уравнений для вероятностей
Рассмотрим на примере методику моделирования с использованием метода динамики средних.
Пример
2.8. В
части имеются 100 средств связи (СС). СС
выходят из строя с интенсивностью
.
При нахождении СС в неисправном состоянии
проводится его диагностика, в результате
чего оно может быть отправлено в ремонтное
подразделение части (интенсивность
отправки
),
либо во внешнее ремонтное подразделение
(интенсивность отправки
),
либо списано (интенсивность списания
).
В ремонтном подразделении части СС
ремонтируются с интенсивностью
,
а во внешнем ремонтном подразделении
- с интенсивностью
.
СС части пополняются с интенсивностью
,
в среднем равной интенсивности списания.
Требуется провести моделирование с целью определения средних численностей каждого состояния СС.
Решение
Описание состояний одного средства связи
Система может иметь следующие четыре состояния:
- СС исправно;
- СС неисправно, производится диагностика;
- СС находится на ремонте в ремонтном подразделении части;
- СС находится на ремонте во внешнем ремонтном подразделении.
Построение размеченного графа состояний
Размеченный граф состояний представлен на рис. 2.16.
Рис. 2.16. Размеченный граф состояний системы ремонта
Составление системы дифференциальных уравнений
Каждое уравнение системы составляется по тому же правилу, что и система дифференциальных уравнений Колмогорова.
Численности
состояний являются функциями времени,
т. е.
.
В системе дифференциальных уравнений
запись упрощена. Выражение для пополняющего
члена написано из условия равенства в
среднем пополнения и убыли
.
Также мы не можем воспользоваться
нормировочным условием
,
так как в силу случайного характера
списания и пополнения в некоторые
моменты времени оно может не выполняться.
Общее число СС в части при этом меняется
со временем:
-
(t)dt)
Решение системы дифференциальных уравнений относительно m_{i}
Решить
систему ДУ можно методом численного
интегрирования, например, Рунге-Кутта,
задав начальные значения численно-стей
состояний для момента
:
считая
интенсивности
известными.
Вычисление дисперсий и среднеквадратических отклонений
Дисперсия вычисляется по формуле:
По
дисперсии определяется среднеквадратическое
отклонение численности состояний
и
находится диапазон возможных значений
численности
состояния
.
Метод динамики средних справедлив и для предельных значений численностей состояний. В данной задаче уравнения динамики средних - система линейных алгебраических уравнений:
Однако прежде чем переходить к этим уравнениям, нужно сначала убедиться, что стационарные значения существуют. Здесь численности состояний не являются функциями времени. Поэтому можно воспользоваться нормировочным условием.