Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Уч_пос_CALS_CASE.doc
Скачиваний:
42
Добавлен:
09.11.2019
Размер:
2 Mб
Скачать

4.4. Сети Петри

Сети Петри – это аппарат для моделирования динамических дискретных систем. Динамическая система - это система, состояние которой изменяется с течением времени. В настоящее время сети Петри применяются в основном в моделировании [7].

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

Моделирование в сетях Петри осуществляется на событийном уровне. Определяются, какие действия происходят в системе, какие состояние предшествовали этим действиям и какие состояния примет система после выполнения действия. Выполнения событийной модели в сетях Петри описывает поведение системы. Анализируя результаты выполнения, можно сказать о том, в каких состояниях пребывала или не пребывала система, какие состояния в принципе не достижимы.

Сеть Петри определяется как четверка <Р, Т, I, O>, где Р и Т - конечные множества позиций и переходов, I и O - множества входных и выходных функций. Другими словами, сеть Петри представляет собой двудольный ориентированный граф, в котором позициям Р соответствуют вершины, изображаемые кружками, а переходам Т - вершины, изображаемые утолщенными черточками; функциям I соответствуют дуги, направленные от позиций к переходам, а функциям О - дуги, направленные от переходов к позициям.

В сетях Петри вводятся объекты двух типов: динамические, которые изображаются метками (маркерами) внутри позиций, и статические, которые соответствуют вершинам сети Петри.

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

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

Рис 12. Фрагмент сети Петри

Правила срабатывания переходов (рис. 12) конкретизируют следующим образом: переход срабатывает, если для каждой из его входных позиций выполняется условие Ni >= Ki, где Ni - число маркеров в i-й входной позиции, Ki - число дуг, идущих от i-й позиции к переходу; при срабатывании перехода число маркеров в i-й входной позиции уменьшается на Ki, а в j-й выходной позиции увеличивается на Мj где Мj - число дуг, связывающих переход с j-й позицией.

На рис. 12 показан пример распределения маркеров по позициям. Для срабатывания перехода эту маркировку можно записать в виде (2, 1, 3, 1) или (2131). После срабатывания перехода маркировка принимает вид (0,0,0,4).

Возможно ввести ряд дополнительных правил и условий в алгоритмы моделирования, получая ту или иную разновидность сетей Петри. Так, прежде всего, полезно ввести модельное время, чтобы моделировать не только последовательность событий, но и их привязку ко времени. Это осуществляется приданием переходам веса - продолжительности (задержки) срабатывания, которую можно определять, используя задаваемый при этом алгоритм. Полученную модель называют временной сетью Петри. Если задержки являются случайными величинами, то сеть называют стохастической. В стохастических сетях возможно введение вероятностей срабатывания возбужденных переходов.

Рис. 13. Конфликтная ситуация.

Так, на рис. 13 представлен фрагмент сети Петри, иллюстрирующий конфликтную ситуацию: маркер в позиции р2 может запустить либо переход t1, либо переход t2. В стохастической сети предусматривается вероятностный выбор срабатывающего перехода в таких ситуациях.

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

Во многих задачах динамические объекты могут быть нескольких типов, и для каждого типа нужно вводить свои алгоритмы поведения в сети. В этом случае каждый маркер должен иметь хотя бы один параметр, обозначающий тип маркера. Такой параметр обычно называют цветом; цвет можно использовать как аргумент в функциональных сетях. Сеть Петри при этом называют цветной. Среди других разновидностей сетей Петри следует упомянуть ингибиторные сети, характеризующиеся тем, что в них возможны (ингибиторные) дуги. Наличие маркера во входной позиции связанно с переходом ингибиторной дугой, означает запрещение срабатывания перехода [7].

Анализ сетей Петри

При имитационном моделировании сложных систем на базе сетей Петри задают входные потоки заявок и определяют соответствующую реакцию системы. Выходные параметры рассчитывают путем обработки накопленного при моделировании статистического материала.

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

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

Безопасность - частный случай ограниченности, а именно это l -ограниченность. Если для некоторой позиции установлено, что она безопасна, то ее можно представлять одним триггером.

Сохраняемость характеризуется постоянством загрузки ресурсов, т.е.

Ai Ni = const,

где Ni - число маркеров в i-й позиции; Ai - весовой коэффициент.

Достижимость Mk->Mj характеризуется возможностью достижения маркировки Mj из состояния сети, характеризуемого маркировкой Mk.

Живость сети Петри определяется возможностью срабатывания любого перехода при функционировании моделируемого объекта. Отсутствие живости либо означает избыточность аппаратуры в проектируемой системе, либо свидетельствует о возможности возникновения зацикливаний, тупиков, блокировок [7].

В основе исследования перечисленных свойств сетей Петри лежит анализ достижимости.

Один из методов анализа достижимости любой маркировки из состояния М0 - построение графа достижимости. Начальная вершина графа отображает М0, а остальные вершины соответствуют другим маркировкам. Дуга из Mi в Мj означает событие Мi -> Мj и соответствует срабатыванию перехода t. В сложных сетях граф может содержать чрезмерно большое число вершин и дуг. Однако при построении графа можно не отображать все вершины, так как многие из них являются дублями (действительно, от маркировки Mk всегда порождается один и тот же подграф независимо от того, из какого состояния система пришла в Mk). Тупики обнаруживаются по отсутствию разрешенных переходов из какой-либо вершины, т.е. по наличию листьев — терминальных вершин. Неограниченный рост числа маркеров в какой-либо позиции свидетельствует о нарушениях ограниченности.

Приведем пример анализа достижимости,

На рис. 14, а показана сеть Петри, а на рис. 14, б - соответствующий ей граф достижимых разметок.

Вершины графа на рис. 14, б соответствуют маркировкам (состояниям сети Петри), представленным в виде последовательности цифр, цифры означают количества меток в позициях, перечисляемых в порядке р1, р2, p3 р4, р5. Дуги помечены обозначениями срабатывающих переходов. Живость сети очевидна, так как срабатывают все переходы, тупики отсутствуют.

а

б

Рис 14. Сеть Петри (а) и граф достижимости (6)[7].