logo
Mylnik_ISU / Мыльник_Исследование систем управления_2001

9. 2. Имитация функционирования систем с дискретными событиями

Класс систем управления, формализуемых в виде систем с дискретными событиями, достаточно широк и включает в себя большие информационно-управляющие системы, вычислительные системы, системы связи и др. При решении задачи программной имитации любой системы, в том числе и системы с дискретными событиями, составляется содержательное описание процесса функционирования, формализованное в виде математической модели. При этом определяются параметры модели, аппроксимирующие таблицы частот экспериментальных данных.

При имитации функционирования систем на ЭВМ построенная математическая модель преобразуется в моделирующий алгоритм, в котором сохраняются логическая структура, последовательность протекания процесса во времени, характер и состав информации о состояниях процесса. ЭВМ представляют собой устройства дискретного типа, а потому и моделирующий алгоритм должен являться дискретной аппроксимацией построенной математической модели функционирования системы. Прямой путь решения данной задачи весьма прост. Интервал времени [0; Т], в течение которого рассматривается работа системы, разбивается на интервалы длиной Dt, из-за чего данный способ решения получил название принципа Dt. В пределах каждого интервала последовательно вычисляются приращения всех процессов в модели и производится, если это нужно, изменение состояния отдельных элементов модели. При достаточно малых Dt получаем хорошее приближение имитируемых процессов к процессам в реальной системе с параллельным выполнением операций. При таком способе построения моделирующего алгоритма точность моделирования достигается ценой больших затрат машинного времени. Обычно такой способ построения имитационных моделей используется при моделировании непрерывных динамических систем. Принцип Dt является наиболее универсальным принципом построения моделирующих алгоритмов, хотя и наименее экономичным с точки зрения вычислений на ЭВМ.

Однако данный способ мало пригоден для решения задач имитации больших информационных систем, динамика которых состоит в переходе из состояния в состояние, причем в промежутках между переходами состояние системы остается неизменным. Каждый такой переход связан с наступлением некоторого события в системе, например приход входного либо управляющего дискретного сигнала, приход требования, отказ элемента, достижение некоторой характеристикой системы заданного порогового значения и др.

Анализ различных алгоритмов моделирования для такого класса систем, проведенный в [2], показал, что наиболее часто используется принцип особых состояний. При построении алгоритма имитации функционирование системы, формализованное в математической модели, рассматривается как совокупность параллельно протекающих процессов, причем каждый процесс есть некоторая последовательность событий. С каждым событием связано изменение состояния системы. Событие, возникающее в системе, определяется как особое состояние. Процессы в общем случае не являются независимыми, а взаимодействуют между собой. Для иллюстрации данных понятий рассмотрим пример.

Пример. Пусть в систему массового обслуживания, состоящую из одного прибора для обслуживания, поступает поток требований. Если требование, придя в систему, застает прибор свободным, то оно занимает прибор и обслуживается в нем в течение некоторого времени, после чего покидает систему. В противном случае требование поступает в очередь к прибору, где будет дожидаться конца обслуживания всех ранее поступивших в систему требований. В такой системе возможны 2 процесса: 1) процесс поступления требований; 2) процесс «захвата» прибора и обслуживания требований, причем процесс поступления требований инициирует второй процесс, если последний был приостановлен по причине отсутствия требований.

Под состоянием системы будем понимать число требований, находящихся в системе. Из алгоритма функционирования видно, что состояние системы изменяется либо под влиянием событий процесса №1 (приход требований), либо под влиянием событий процесса №2 (захват и обслуживание). Анализ содержания данного примера показывает, что для развертывания совокупности параллельно протекающих процессов в последовательный необходимо упорядочить во времени моменты наступления событий каждого из процессов. Далее, сканируя по временной упорядоченной последовательности и имитируя в каждый наступивший момент особого состояния все необходимые действия, заданные в содержательном описании процесса функционирования системы как реакция системы на событие, получим имитационную модель алгоритма функционирования системы для ЭВМ

С целью формализации принципа особых состояний определим для каждого выделенного процесса момент Ti наступления очередного события i – го процесса и, если таких процессов будет n, то выбор наиболее раннего момента наступления особого состояния определится в соответствии с операцией

Tr = min Ti , (9.1)

i

где r – номер процесса, в котором наступило ближайшее событие. Моменты Ti называются моментами системного времени, в отличие от реального времени, в котором работает моделирующая ЭВМ.

Рассмотрим структурную схему моделирующего алгоритма (рис.9.1) и назначение основных операторов.

Нет

Да

Рис. 9.1 Структурная схема моделирующего алгоритма поведения системы управления

Оператор задания начальных условий А содержит:

Оператор определения очередного момента изменения состояния системы В находит момент наступления наиболее раннего события в соответствии с формулой (9.1) и определяет вид состояния системы, в которое она переходит в данный момент времени. Таким образом, оператор В содержит два массива: массив времени Ti и массив состояний Zi (i = 1,2, …, n).

Логический оператор С осуществляет переход по номеру наступившего события к соответствующему оператору Di, имитирующему реакцию системы на событие. Оператор реакции Di имеет следующие основные функции:

Следует заметить, что если процесс переходит в приостановленное состояние, то время наступления очередного события определить нельзя. В этом случае обычно принимают Tj = ¥ (где j – номер такого процесса) для того, чтобы исключить этот процесс из массива T в силу соотношения (9.1). Данный процесс активизируется только в случае инициирования его событиями других процессов.

Оператор реакции Dn+1 обычно вводится в тех случаях, когда имитация производится на ограниченном интервале длины T0, где Tn+1 = T0 – длительность одного имитационного эксперимента. Когда T0 окажется очередным моментом изменения состояния, управления передается блоку Dn+1, выполняющему все необходимые действия по завершению одного имитационного эксперимента. Если не проведено достаточное для статистической точности число экспериментов, что проверяется оператором Е, то осуществляется возврат в оператору А2; в противном случае проводится обработка результатов в блоке оператора О (окончание) и выдача результатов имитационных экспериментов на устройство печати.