
- •Методические материалы
- •1. Основы имитационного моделирования1
- •1.1. Общие положения
- •1.2. Событийный подход к построению алгоритма модели
- •1.3. Подход сканирования активностей
- •1.4. Учет законов распределения случайных параметров
- •1.5. Возможные показатели, оцениваемые с помощью имитационной модели. Проверка гипотез
- •1.6. Схемы проведения имитационных экспериментов. Статистическая обработка результатов экспериментов
- •1.6.1. Метод повторений
- •1.6.2. Метод подынтервалов
- •1.6.3. Метод циклов
- •2. Пример построения блок-схемы имитационной модели
- •3. Способы понижения погрешностей выборочных оценок расчетных параметров
- •3.1. Дополняющие выборки
- •3.2. Общие потоки случайных чисел
- •3.3. Управляющие переменные
- •3.4. Стратифицированные выборки
- •3.5. Значимые выборки
- •4. Некоторые типы систем массового обслуживания (для проведения имитационных экспериментов)
- •4.1. Модели массового обслуживания с пуассоновскими потоками
- •4.1.1. Обобщенная стационарная модель смо
- •4.1.2. Модель смо (m/m/1):(gd//)
- •4.1.3. Модель смо (m/m/1):(gd/n/)
- •4.1.4. Модель смо (m/m/с):(gd//)
- •4.1.5. Модель смо (m/m/с):(gd/n/), cn
- •4.1.6. Модель смо (m/m/):(gd//)
- •4.1.7. Модель смо (m/m/r):(gd/k/k)
- •4.2. Модель смо (m/g/1):(gd//). Формула Поллачека-Хинчина
- •Приложение
- •Рекомендуемая литература
1.3. Подход сканирования активностей
Как уже отмечалось, понятие события играет важную роль в имитационных моделях любых типов. В рассмотренном выше подходе эта роль проявляется в наиболее "чистом" виде, чему в немалой степени способствовует и характер моделируемой системы – все зависимые переменные модели имеют дискретную природу.
В подходе, рассматриваемом в данном разделе, "события" также играют центральную роль, однако меняется способ их выявления.
Чтобы лучше понять суть этого другого подхода, обратим внимание на важнейшую особенность рассмотренной выше модели: в этой модели момент реализации очередного основного события, включаемого в массив ТОС, очень просто определяется на основе знания момента реализации какого-либо другого события (здесь нетрудно увидеть связь таких простых возможностей с полностью дискретным характером всех зависимых переменных).
Однако в большинстве реальных систем, во-первых, процессы, приводящие к тем или иным событиям, существенно сложнее и, во-вторых, сложнее связи между событиями разных типов. При моделировании таких систем может быть использован в определенной степени "простейший" подход, иногда именуемый "сканированием активностей".
Кратко суть подхода сводится к следующему.
Процесс функционирования моделируемой системы описывается как совокупность подпроцессов. Начало и окончание каждого подпроцесса рассматривается в качестве события. Для каждого такого события определяются условия реализации. (И опять "для контраста" отметим, что в рассмотренной в предыдущем разделе модели такие условия не задаются – моменты реализации очередных событий "просто" генерируются по заданным законам).
Обычно в качестве выделенных подпроцессов принимают те, начало и/или окончание которых играет принципиальную роль в функционировании системы в целом – может существенно изменить ход других подпроцессов.
В простейшем варианте модели организуется циклическая процедура, "перебирающая" с определенным шагом t значения независимой переменной t, начиная с какого-то начального момента t0. На каждом шаге этой процедуры проводится полный анализ состояния ("сканирование") всех элементов системы в интервале t и проверяются условия реализации всех возможных событий.
Если на очередном шаге ни одного основного события не выявлено, то последующий ход каждого подпроцесса (на следующем интервале t) моделируется автономно – независимо от хода других подпроцессов.
Если же какие-то события выявлены, то оценивается реакция системы на эти события и, при необходимости, вносятся коррективы в моделирование всех или части подпроцессов. Прежде всего, меняется точка отсчета для следующего интервала – за начало берется момент реализации выявленного основного события.
Если шаг выбран достаточно малым, то указанный способ позволяет не пропустить ни одного основного события и, следовательно, очень просто и корректно описать функционирование моделируемой системы.
В то же время ясно, что для построения моделей реальных сложных систем, "насыщенных" событиями, такой подход практически неприемлем, ибо он приведет к чрезвычайно большим затратам времени ЭВМ и ее памяти. Поэтому на практике такой подход в чистом виде никогда не применяется. Типичные приемы доработки модели до практически приемлемого облика таковы:
использование для сканирования разных подпроцессов различных значений шага t;
использование переменного шага t, когда вначале с грубым шагом осуществляется просмотр определенного отрезка жизни системы и приблизительно определяется расположение во времени и пространстве основных событий, после чего за счет прохождения с меньшим шагом какого-то короткого отрезка времени это расположение уточняется;
выделение из числа основных событий так называемых "существенных" ("особых") событий, реализация которых может рассматриваться как возможный признак реализации других событий и знание которых может упростить моделирование каких-то, может быть, всех подпроцессов. Данный прием обычно применяется совместно со вторым из указанных.
Применение этих и других приемов позволяет довести имитационную модель, построенную на основе подхода сканирования активностей, до приемлемых затрат времени и памяти, однако, при одновременном существенном ее усложнении.