- •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.1. Дискретные марковские процессы
Наиболее полное исследование процесса функционирования систем получается, если известны явные математические зависимости, связывающие искомые показатели с начальными условиями, параметрами и переменными исследуемой системы. Для многих современных систем, являющихся объектами моделирования, такие математические зависимости отсутствуют или малопригодны, и следует применять другое моделирование, как правило, имитационное.
Однако есть ряд конкретных математических схем, проверенных практикой и доказавших эффективность моделированием. Целью изучения настоящей темы является освоение таких математических моделей.
В инженерно практике часто возникает задача моделирования процессов случайной смены состояний в исследуемом объекте. В рамках нашей профессии нас интересуют дискретные состояния. Например, техническое состояние объекта может характеризоваться дискретными состояниями: исправен - неисправен, загружен - находится в простое и т. п. Численности боевых средств противоборствующих сторон изменяются дискретно, очереди объектов, ожидающих обслуживания, и многое другое.
Вид очередного состояния может определяться случайным образом, смена состояний может происходить в случайные или не случайные моменты времени.
Большой класс случайных процессов составляют процессы без последействия, которые в математике называют марковскими процессами в честь Андрея Андреевича Маркова - старшего (1856 - 1922), выдающегося русского математика, разработавшего основы теории таких процессов.
Сущность процесса без последействия понятна из определения.
Случайный процесс называется марковским, если вероятность перехода системы в новое состояние зависит только от состояния системы в настоящий момент и не зависит от того, когда и каким образом система перешла в это состояние.
Практически любой случайный процесс является марковским или может быть сведен к марковскому. В последнем случае достаточно в понятие состояния включить всю предысторию смен состояний системы.
А. А. Марков имеет дополнение к фамилии "старший" потому, что его сын - тоже Андрей Андреевич Марков - выдающийся математик, специалист в области теории алгоритмов и др.
А. А. Марков - старший известен также как давший вероятностное обоснование метода наименьших квадратов, приведший одно из доказательств предельной теоремы теории вероятностей и многое другое.
Дальнейшее развитие теория марковских процессов получила в работах выдающегося отечественного математика Андрея Николаевича Колмогорова.
Марковские процессы делятся на два класса:
дискретные марковские процессы (марковские цепи);
непрерывные марковские процессы.
Дискретной марковской цепью называется случайный процесс, при котором смена дискретных состояний происходит в определенные моменты времени.
Непрерывным марковским процессом называется случайный процесс, при котором смена дискретных состояний происходит в случайные моменты времени.
Итак, моделирование на основе дискретных марковских процессов.
Рассмотрим ситуацию, когда моделируемый процесс обладает следующими особенностями.
Система имеет возможных состояний: , , ..., . Вообще говоря, число состояний может быть бесконечным. Однако модель, как правило, строится для конечного числа состояний.
Смена состояний происходит, будем считать, мгновенно и в строго определенные моменты времени В дальнейшем будем называть временные точки шагами.
Известны вероятности перехода системы за один шаг из состояния в состояние .
Цель моделирования: определить вероятности состояний системы после -го шага.
Обозначим эти вероятности (не путать с вероятностями ).
Если в системе отсутствует последействие, то есть вероятности не зависят от предыстории нахождения системы в состоянии , а определяются только этим состоянием, то описанная ситуация соответствует модели дискретной марковской цепи.
Марковская цепь называется однородной, если переходные вероятности от времени не зависят, то есть от шага к шагу не меняются. В противном случае, то есть если переходные вероятности зависят от времени, марковская цепь называется неоднородной.
Значения обычно сводятся в матрицу переходных вероятностей:
Значения могут также указываться на графе состояний системы. На рис. 2.1 показан размеченный граф для четырех состояний системы. Обычно вероятности переходов "в себя" - , и т. д. на графе состояний можно не проставлять, так как их значения дополняют до 1 сумму переходных вероятностей, указанных на ребрах (стрелках), выходящих из данного состояния.
Не указываются также нулевые вероятности переходов. Например, на рис. 2.1 это вероятности , и др.
Математической моделью нахождения вероятностей состояний однородной марковской цепи является рекуррентная зависимость
где - вероятность -го состояния системы после -го шага, ;
- вероятность -го состояния системы после -го шага, ;
- число состояний системы;
-переходные вероятности.
Рис. 2.1. Размеченный граф состояний системы
Для неоднородной марковской цепи вероятности состояний системы находятся по формуле:
где - значения переходных вероятностей для -го шага.
Пример 2.1. По группе из четырех объектов производится три последовательных выстрела. Найти вероятности состояний группы объектов после третьего выстрела.
Матрица переходных вероятностей имеет вид:
Размеченный граф состояний приведен на рис. 2.2.
Рис. 2.2. Размеченный граф состояний четырех объектов
Прежде чем приступить к вычислениям необходимо, ответить на следующие вопросы.
Является ли рассматриваемый процесс поражения целей марковским? Да, так как степень поражения объекта (смена его состояния) не зависит от того - когда и каким образом объект был приведен в настоящее состояние, а зависит только от его текущего состояния.
Подходит ли рассматриваемая задача под схему марковской цепи? Да, так как время представляет собой дискретные отрезки - время между выстрелами (шаги).
Процесс однородный или неоднородный? Есть основания полагать, что процесс однородный, так как переходные вероятности не зависят от времени. Кроме этого, мы полагаем, что объекты - неподвижные и во времени обстрела менять свое положение не могут (что привело бы к изменениям после каждого выстрела).
И, наконец, надо правильно определить начальное состояние системы, так как от этого могут существенно зависеть результаты моделирования. В нашем случае вполне естественно считать начальным состояние - все объекты целы.
Следовательно, есть все основания для применения ранее введенного рекуррентного выражения (2.1).
Решение. Так как до первого выстрела все объекты целы, то .
После первого выстрела все значения вероятностей соответствуют первой строке матрицы переходных вероятностей. Рассчитаем вероятности остальных состояний.
Сформулируем методику моделирования по схеме дискретных марковских процессов (марковских цепей).
Зафиксировать исследуемое свойство системы.
Определение свойства зависит от цели исследования. Например, если исследуется объект с целью получения характеристик надежности, то в качестве свойства следует выбрать исправность. Если исследуется загрузка системы, то - занятость. Если, как в примере 2.1, состояния объектов, то - поражен или непоражен.
Определить конечное число возможных состояний системы и убедиться в правомерности моделирования по схеме дискретных марковских процессов.
Составить и разметить граф состояний.
Определить начальное состояние.
По рекуррентной зависимости (2.1) определить искомые вероятности.
В рамках изложенной методики моделирования исчерпывающей характеристикой поведения системы является совокупность вероятностей
При неоднородном марковском процессе переходная вероятность представляет собой условную вероятность перехода
, зависящую от - очередного временного шага. В этом случае должны быть указаны более одной матрицы значений (для некоторых шагов матрицы могут быть одинаковыми).
Например, при нанесении ударов по объектам, которые могут перемещаться (танковая группировка, корабли и т. п.), последние будут принимать меры по рассредоточению средств или другому защитному маневру, вплоть до активного противодействия атакующей стороне. Очевидно, все эти меры приведут к уменьшению поражающих возможностей стороны, наносящей удары, т. е. к соответствующему изменению переходных вероятностей. Процесс становится неоднородным.