Этот способ рекомендуется использовать в том случае, когда ФД i j - компонент реального объекта являются различными. При этом для выполнения каждого функционального действия требуются свои условия выполнения, которые можно представить алгоритмически. Кроме того, выполнение ФД происходит независимо друг от друга. В этом случае имитационная модель для исследователя может быть представлена в виде двух частей:
1 часть представляется в виде множества активностей {АК i j },
2 часть представляется в виде множества условий инициализаций {УИ i j }.
Под инициализацией активности АК i j будем понимать передачу управления от УПМ на выполнение данной активности АК i j. В процессах выполнения и проверки условий инициализации реализуются зависимости выполнения ФД i j в зависимости от конкретных ситуаций в моменты ti j . На ЭВМ алгоритм выполнения данной активности принято называть обслуживанием, которое заканчивается модификацией времени Mt i j , а соответственно и модельного времени t0, после чего алгоритм возвращается к УПМ.
Перед началом имитации устанавливаются начальные состояния компонент Кi , т.е. параметры первого цикла и условия, определяющие инициализацию активностей АК i j . Обычно проверка этих условий (УИ) состоит либо в определении значений параметров модели, либо выполнения моментов времени t i j, в которые начинается функционирование соответствующего действия ФД i j (завершение). Однако для простоты дальнейшего рассуждения полагаем, что каждая активность имеет одно условие проверки. Поэтому, в структуре каждому Ak соответствует одно УИ. Пользователь описывает не только алгоритм действия, но и оператор модификации времени Mt i j , а также алгоритм проверки УИ. Алгоритм инициализации УПМ активностей АК i j состоит в следующем: по первому циклу параметром является максимальное число активностей АК i j имитационной модели. Имена выполненных активностей (УИ -> да), т.е. инициализированных заносятся в список активностей. По завершению первого цикла начинается второй цикл, параметром которого является число неинициализированных активностей, полученных после прогона первого цикла. Второй цикл осуществляет последовательную передачу управления на выполнение обслуживания соответствующих активностей второго цикла и формирование второй части имитационной модели пользователя. Каждое обслуживание активностей АК i j завершается оператором Мt i j, с помощью которого вычисляется новое время t i j инициализации активностей АК i j . Может оказаться, что при выполнении некоторых активностей АК i j, инициализированных во втором цикле, вновь устанавливаются соответствующие значения параметров и переменных, указывающих на новое выполнение условий инициализации. Поэтому, управление может вновь передаваться на начало первого цикла. Только в том случае, когда после первого цикла список инициализаций активностей будет пуст, УПМ корректирует старое значение модельного времени.
Все моменты времени ti j заносятся в списки моментов инициализаций (СМИ), с помощью которых формируются сведения для подпрограммы статистики. Когда завершается обслуживание некоторой активности, в этот список заносится имя активности и время t i j (AK i j , t i j). После корректировки времени t 0 производится проверка выполнения условия завершения имитации. В случае его невыполнения, управление передается на осуществление первого цикла и т.д. Когда имитация завершена, то осуществляется обращение к подпрограмме окончания и завершения моделирования.
Вывод: поскольку выполнение одних активностей АК i j может привести к инициализации других активностей, то в УПМ возможны повторяющиеся циклические выполнения условий инициализации УИ i j . При этом события С i j не регламентированы, а лишь указываются условия, при которых они могут произойти. Отметим также, что инициализация активности и сдвиг временных координат разрешается лишь тогда, когда выполняются все условия ее инициализации. Иногда такие проверки в работе УПМ безуспешны и поэтому может произойти зацикливание, поэтому при огранизации данного способа квазипараллелизма используют, как правило, простые алгоритмы проверки выполнимости условий инициализации. Этим и объясняются ограничительные меры способа активностей квазипараллелизма.
0 коммент.:
Отправить комментарий