Механов В.Б., Кизилов Е.А., Коннов ... стеме CPN Tools.

advertisement
Механов В.Б., Кизилов Е.А., Коннов Н.Н. Моделирование конечного автомата в системе CPN Tools. // Проблемы информатики в образовании, управлении, экономике и технике: Сб. статей Междунар. научно-техн. конф.– Пенза: ПДЗ, 2010. – С. 13-16.
МОДЕЛИРОВАНИЕ КОНЕЧНОГО АВТОМАТА
В СИСТЕМЕ CPN TOOLS
В.Б. Механов, Е.А. Кизилов, Н.Н. Коннов
Пензенский государственный университет,
г. Пенза, Россия
Предлагается методика построения цветной сети Петри, моделирующей работу заданного цифрового автомата в системе CPN Tools.
Mekhanov V.B., Kizilov E.A., Konnov N.N. Modelling of the finite state machine in system cpn tools. The technique of construction of a color Petri net modeling work of the set digital
finite state machine in system CPN Tools is suggested.
Для изучения динамики функционирования технических и экономических
объектов находит применение система CPN Tools – мощный инструмент для
построения и исследования моделей с использованием аппарата цветных
иерархических временных сетей Петри [1].
Для многих объектов и процессов традиционно используются автоматные
представления, поэтому может быть поставлена задача использования возможностей системы CPN Tools для исследования поведения автоматов. Кроме того,
разработка моделей сетей Петри алгоритмически сложных объектов, например,
телекоммуникационных систем, вызывает трудности с обеспечением адекватности модели. Поэтому был предложен подход к построению сети Петри как
совокупности операционных и управляющих подсетей, исходно описанных как
конечные автоматы [2].
В cвязи с этим представляет интерес методика построения цветной сети
Петри, моделирующей работу заданного конечного автомата в системе CPN
Tools.
Рассмотрим пример построения цветной сети, моделирующей абстрактный
автомат Мили, который описывается совмещенной таблицей переходов и выходов и графом, представленным на рис. 1.
S0
S1
S2
S0/y1
S0/y0
S0/y0
х0
S1/y1
S1/y1
S2/y1
х1
S0/y1
S1/y2
S2/y1
х2
S0/y1
S2/y1
S2/y1
х3
х0 v х2 v х3 /у0
х1 /у2
х1 /у1
S0
х0 v х2 v х3 /у1
х1 /у1
S1
х3 /у1
S2
х0 /у0
х1 /у1
Рис. 1. Граф автомата
Для перехода от автомата к цветной сети Петри необходимо выполнить следующие действия. Поставим в соответствие входным и выходным переменным по
одной позиции. В этих позициях должны всегда находиться маркеры, цвета которых соответствуют буквам входного и выходного алфавитов. Каждому состоянию
автомата поставим в соответствие свою позицию и переход. Наличие в позиции состояний маркера (цвет в данном случае не имеет значения) отмечает нахождение
моделируемого автомата в соответствующем состоянии. Для цветной сети Петри
необходимо выполнять те же требования, что и для детерминированных автоматов,
а именно: в позициях состояний в любой момент должен находиться только один
маркер.
Каждый переход связан входными дугами с позицией соответствующего состояния автомата и выходной позицией. Также переход связан двунаправленной входной дугой с входной позицией. Выходные дуги перехода связаны с
выходной позицией и позицией нового состояния автомата, отличного от прежнего.
Особо рассмотрим вопрос замыкания перехода на «свою» позицию состояния (замыкание на себя). Возврат маркера в исходное состояние при срабатывании перехода допустим лишь при условии, что при срабатывании этого перехода маркер в выходной позиции меняет цвет. Это связано с тем, что в системе
CPN Tools подобные переходы приводят к зацикливанию модели. Поэтому рассмотренные выходные дуги вводятся в случае, если имеет место изменение выходных букв при неизменном состоянии.
При срабатывании каждого перехода в сети Петри происходит:
перемещение маркера состояний из текущей позиции в новую;
изменение цвета маркера в выходной позиции, которое выполняется изъятием из нее старого и помещения вместо нее нового маркера;
изъятие и возврат маркера во входной позиции.
Для каждого перехода необходимо определить условия его срабатывания.
Во-первых, это наличие маркера во входной для перехода позиции состояния,
во-вторых, цвет маркера во входной позиции должен принимать такие значения, при которых выполняется переход из текущей позиции состояния в новую
позицию состояния либо происходит изменение цвета маркера в выходной позиции.
При срабатывании перехода задается условие передачи маркера по выходной дуге. Для дуг, связанных с позициями состояний, это условие соответствует переходу автомата из текущего состояния при соответствующей входной
букве. Для дуг, связанных с выходными позициями, при срабатывании перехода формируется маркер, цвет которого соответствует определенной входной
букве. Значения цветов выходных маркеров определяются из анализа соответствующего столбца таблицы переходов-выходов автомата.
Применяя все изложенные выше правила для автомата, изображенного на
рис. 1, в системе CPN Tools можно построить сеть Петри, изображенную на
рис. 2.
Рис. 2. Сеть Петри, моделирующая автомат, заданный графом рис. 1
В данной сети входные сигналы описываются множеством цветов Х, которое определяется как colset X = int with 0..3. Это означает, что фишки цвета Х
могут принимать цифровое значение от 0 до 3. Аналогично описаны выходные
сигналы Y, определяемые как colset Y = int with 0..2. Между состояниями перемещается фишка а, принимающая для наглядности цифровое значение 7.
Рассмотрим переход Р1, моделирующий переходы автомата, определяемые
столбцом 1 таблицы. Срабатывание перехода Р1 при наличии маркера 1’7 происходит в случае, когда либо цвет входного маркера равен 0 или 3, (одноименные
строки таблицы), либо цвет входного маркера равен 1 или 3, но цвета выходного маркера не равны 1 или 2 соответственно, т.е. маркер в выходной позиции
должен сменить цвет.
Цвет маркера позиции Y при каждом срабатывании перехода Р1 определяется в зависимости от цвета маркера в позиции Х (буквы у в столбце 1 таблицы).
Условия формирования маркера на выходных дугах также соответствуют строкам 1 и 2 столбца 1.
Предложенный подход может быть применен и для построения цветной сети
Петри, моделирующей автомат Мура. Так как в автомате этого типа выходная переменная определяется его состоянием, автомата, то в сети Петри будут отсутствовать «замыкающие» выходные дуги переходы, а условия их срабатывания будут
зависеть только от цветов входных маркеров.
Библиографический список
1. Kurt Jensen, Lars M. Kristensen. Coloured Petri Nets: modelling and validation
of concurrent systems. – Springer, 2009.
2. Механов В.Б. Применение сетей Петри для моделирования телекоммуникаций с поддержкой качества обслуживания // Труды XVII Всерос. науч.-метод. конф.
«Телематика'2010». – Т. 2. – СПб.: СПбГУ ИТМО, 2010.
Download