MS_glavy_123 (1086515), страница 7
Текст из файла (страница 7)
Для моделирования агрегата вводятся следующие операторы:
— формирование очередного момента
поступления в агрегат управляющего сигнала;
— проверка условия
, где Т— граница интервала (0, T) изучения агрегата;
—подстановка вместо
величины Т;
— проверка условия
, где
— момент поступления входного сигнала, и определение
, причем далее по
понимается ближайший момент поступления сигнала:
или
.
— формирование очередного момента
поступления в агрегат входного сигнала;
— подстановка вместо
величины Т;
— формирование признака
= 0— «ближайшим сигналом» будет управляющий сигнал»,
=
;
— формирование признака
= 1 — «ближайшим сигналом» будет входной сигнал»,
=
;
— формирование оператора
в зависимости от вида особого состояния: поступление входного сигнала, поступление управляющего сигнала, выдача выходного сигнала, начало моделирования (t = 0) для определения состояний z(t);
— формирование непрерывного процесса функционирования агрегата z(t) под действием оператора
;
— проверка принадлежности состояния z(t) подмножеству
и определение ближайшего момента
выдачи выходного сигнала (реализация оператора
);
— проверка условия
, где под
понимается меньшее из
и
;
— определение состояния агрегата в момент
(реализация оператора
);
— формирование выходного сигнала у (реализация оператора W");
— формирование состояния z(
+ 0) после выдачи выходного сигнала (реализация оператора V*);
— проверка принадлежности состояния z(
+ 0) подмножеству
(реализация оператора W');
— определение состояния агрегата z(t) в момент t (peaлизация оператора
);
— формирование входного сигнала х;
— определение состояния z(
+ 0) агрегата после входного (реализация оператора V');
— проверка принадлежности состояния z(
+ 0) подмножества (реализация оператора W');
— формирование управляющего сигнала g;
— определение состояния z(
+ 0) агрегата после управляющего сигнала (реализация оператора V");
— проверка принадлежности состояния z(
+ 0) подмножества
(реализация оператора W');
— определение состояния агрегата z(T) в момент Т окончания моделирования (реализация оператора
;
— фиксация результатов, полученных при моделировании реализации процесса;
— счетчик количества реализаций (выполняет операцию );
— проверка условия N < N*, где N* — необходимое количество реализаций;
— переход к моделированию очередной реализации;
— обработка результатов моделирования;
Операторная схема моделирующего алгоритма имеет вид:
В этой записи использован следующий принцип обозначений. Если порядок следования операторов отличается от естественного (заданного последовательными номерами), то номера входных операторов указаны вверху слева от символа; номера операторов, к которым следует переход, — вверху справа от символа; на стрелке, идущей вверх от оператора условного перехода, указан номер оператора, которому передается управление при выполнении условия; на стрелке вниз — в противном случае.
Работа моделирующего алгоритма заключается в следующем.
Группы операторов -
и
–
по структуре одинаковы и служат для задания очередных моментов времени поступления входных и управляющих сигналов, имеющих случайный характер. Операторы
и
выводят эти моменты из рассмотрения, если они наступают позже заданного конца интервала моделирования.
Группа операторов –
моделирует процесс функционирования агрегата в интервале времени между последовательными моментами поступления внешнего сигнала. Поскольку в течение этого интервала внешних сигналов нет, состояния агрегата определяются оператором
(оператор
). Единственным видом особых состояний агрегата (т.е. состояний, в которые агрегат переходит скачком) в этом случае являются состояния выдачи выходных сигналов или, другими словами, состояния, принадлежащие подмножествам
.
Задача оператора состоит в том, чтобы путем совместного моделирования состояний z(t) и условий, определяющих подмножества
, определить моменты
выдачи выходных сигналов агрегата (оператор W) и найти наименьший из них. Поскольку состояние z(t) изменяется непрерывно, необходимо иметь средства для управления ходом времени. Для этого в составе операторов алгоритма предусмотрен счетчик времени
, который, вообще говоря, представляет собой механизм, внешний по отношению к имитационному алгоритму. Он реализуется специальными программными средствами.
Если момент выдачи выходного сигнала оказывается внутри интервала между внешними сигналами (оператор
), то выходной сигнал у должен быть фактически выдан. Поэтому необходимо найти z(
) (оператор
) и сформировать сам сигнал y (оператор
). Далее необходимо определить состояние z(
+ 0) (оператор
)
и проверить (оператор ), не принадлежит ли z(
+ 0) одному из подмножеств
.
Если это условие выполнено, то управление передается опять оператору для формирования второго выходного сигнала, выдаваемого в момент
, и т.д.
Eсли же состояние z ( + 0) не принадлежит
, то управление передается оператору
для формирования новых моментов
.
Группа операторов –
моделирует прием входного сигнала, группа операторов
-
— прием управляющего сигнала. Заметим, что z(
+ 0), где
— момент поступления входного или управляющего сигнала, сразу может принадлежать одному из подмножеств
. Это условие проверяется операторами
и
. Если обнаружено, что переходы в соответствующие особые состояния приводят к выдаче выходного сигнала, следуют обращения к оператору формирования
.
Остальные операторы имеют вспомогательный характер.
Видно, что моделирующий алгоритм, имитирующий работу одиночного агрегата, имеет сложную структуру. Если принять во внимание иерархический характер системы моделей агрегатов, возможность их одновременного функционирования и, следовательно, необходимость параллельного моделирования с учетом обратных связей, то трудности разработки имитационного алгоритма многократно возрастут. Путь к упрощению этой задачи — разбиение интервала длительности Т на интервалы меньшей длительности . Когда число активных агрегатов на каждом таком интервале мало, размерность и сложность задачи анализа существенно уменьшаются. Существуют два принципа выбора длительности шага
и, соответственно, два типа моделирующих алгоритмов: с фиксированным (детерминированным) шагом и с переменным (случайным) шагом.
Моделирующий алгоритм с детерминированным шагом. Интервал времени (0, T), в течение которого рассматривается работа системы, разбивается на интервалы фиксированной длины . В пределах каждого интервала (шага) последовательно вычисляются приращения всех процессов, протекающих в модели, и производится, если это нужно, изменение состояния отдельных агрегатов (элементов модели). При достаточно малых
в точках j
(j= 0, 1, ...) получается хорошее приближение моделируемых таким образом процессов к процессам в «идеальной» непрерывной модели.
При таком «равномерном обзоре» точность модели обеспечивается большими затратами машинного времени. Действительно, пусть выбрана следующая величина кванта системного времени (т.е. времени, в котором функционирует исследуемый объект) : T/
=n. Допустим, что в среднем для реализации программы алгоритма, имитирующего работу объекта на интервале
, требуется машинное время Q единиц, а на интервале (0, Т) — время nQ. Можно считать, что величина Q, определяемая типом ЭВМ, особенностями написания программы и другими факторами, не зависит от
. Тогда с увеличением точности (
уменьшается) увеличиваются величины n и nQ, это делает модель нереализуемой.
Блоки 4, 5, 6 алгоритма (см. рис.1) работают в случае детерминированного шага следующим образом:
1) вводятся данные о состоянии агрегатов при t = 0;