Гибридная карта поведения

Карта поведения (behavior chart или B-chart) - это ориентированный граф, в котором узлам приписываются некоторые локальные поведения, а дуги интерпретируются как переходы от одного поведения к другому. В каждый момент времени один из узлов является текущим. Один из узлов должен быть помечен как начальный (Init), он становится текущим при создании карты состояний. Смена текущего узла происходит в результате срабатывания переходов.

В общем случае узел N карты поведения характеризуется: локальной функцией поведения; множеством входящих и исходящих переходов; входными и выходными действиями, являющимися общими для всех входящих и исходящих переходов.

В общем случае переход из начального узла Ni в конечный узел Nj характеризуется: охраняющим предикатом G, запускающим событием E, и мгновенными действиями A.

Возможны три типа взаимоисключающих запускающих событий: 1) логическое условие, определяющее возможность срабатывания перехода, стало истинным (change event); 2) поступил внешний сигнал (signal event); 3) истекло заданное время пребывания в текущем узле Ni (time event).

Срабатывание перехода представляет собой следующую последовательность мгновенных действий:

- становится пассивным локальное поведение узла Ni;

- выполняются выходные действия узла Ni;

- узел Ni перестает быть текущим;

- выполняется мгновенная последовательность действий A;

- узел Nj становится текущим;

- выполняются входные действия узла Nj;

- активизируется локальное поведение узла Nj.

Локальное поведение может быть задано как непрерывное поведение, карта поведения (в этом случае узел называется гиперузлом) или пустое поведение NULL.

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