A Сеть Петри, также известная как сеть размещения / перехода (PT), является одной из несколько математических языков моделирования для описания распределенных систем. Это класс динамической системы дискретных событий. Сеть Петри - это ориентированный двудольный граф, который имеет два типа элементов, места и переходы, изображенные как белые кружки и прямоугольники соответственно. Место может содержать любое количество жетонов, обозначенных черными кружками. Переход разрешен, если все точки, подключенные к нему в качестве входов, содержат хотя бы один токен. Некоторые источники утверждают, что сети Петри были изобретены в августе 1939 года Карлом Адамом Петри - в возрасте 13 лет - для этой цели. описания химических процессов.
Подобно отраслевым стандартам, таким как UML диаграммы действий, Модель и нотация бизнес-процессов и цепочки процессов, управляемых событиями, Сети Петри предлагают графическое представление для пошаговых процессов, которые включают выбор, итерацию и параллельное выполнение. В отличие от этих стандартов, сети Петри имеют точное математическое определение семантики их выполнения с хорошо развитой математической теорией для анализа процессов.
(a) Пример траектории сети ПетриСеть Петри состоит из позиций, переходов и дуг. Дуги проходят от места к переходу или наоборот, но никогда между местами или переходами. Места, из которых проходит дуга к переходу, называются входными местами перехода; места, в которые идут дуги от перехода, называются местами вывода перехода.
Графически места в сети Петри могут содержать дискретное количество меток, называемых токенами. Любое распределение жетонов по местам будет представлять конфигурацию сети, называемую маркировкой. В абстрактном смысле, относящемся к диаграмме сети Петри, переход сети Петри может сработать, если он разрешен, то есть имеется достаточно токенов во всех его входных местах; когда срабатывает переход, он потребляет необходимые входные токены и создает токены в своих выходных местах. Обжиг является атомарным, то есть однократным непрерывным шагом.
Если не определена политика выполнения, выполнение сетей Петри будет недетерминированным : когда несколько переходов разрешены одновременно, они будут срабатывать в любом порядке.
Поскольку срабатывание не является детерминированным и несколько токенов могут присутствовать в любом месте сети (даже в одном месте), сети Петри хорошо подходят для моделирования одновременного поведения распределенных систем.
Сети Петри - это системы с переходом между состояниями, которые расширяют класс сетей, называемых элементарными сетями.
Определение 1. A сеть представляет собой тройку где:
Определение 2. Учитывая a net N = (P, T, F), конфигурация - это набор C, так что C ⊆ P.
Сеть Петри с разрешенным переходом. Сеть Петри, которая следует после срабатывания перехода (Начальная сеть Петри на рисунке выше).Определение 3. Элементарная сеть - это сеть form EN = (N, C), где:
Определение 4. Сеть Петри - это сеть вида PN = (N, M, W), которая расширяет элементарную сеть так, что:
Если сеть Петри эквивалентна элементарной сети, то Z может быть счетным множеством {0,1} и теми элементами в P, которые отображают к 1 под M образуют конфигурацию. Точно так же, если сеть Петри не является элементарной сетью, то мультимножество M можно интерпретировать как представляющее не одноэлементный набор конфигураций. В этом отношении M расширяет понятие конфигурации элементарных сетей на сети Петри.
На схеме сети Петри (см. Верхний рисунок справа) места условно изображаются кружками, переходы - длинными узкими прямоугольниками, а дуги - односторонними стрелками, показывающими соединения мест с переходами или переходы к местам.. Если бы диаграмма представляла собой элементарную сеть, то эти места в конфигурации были бы условно изображены в виде кругов, где каждый круг включает в себя единственную точку, называемую токеном. На данной диаграмме сети Петри (см. Справа) кружки мест могут охватывать более одного токена, чтобы показать, сколько раз место появляется в конфигурации. Конфигурация токенов, распределенных по всей диаграмме сети Петри, называется маркировкой.
На верхнем рисунке (см. Справа) позиция p 1 является входной точкой перехода t; тогда как место p 2 является выходным местом для того же перехода. Пусть PN 0 (верхний рисунок) будет сетью Петри с настроенной маркировкой M 0, а PN 1 (нижний рисунок) будет сетью Петри с маркировкой настроен M 1. Конфигурация PN 0 обеспечивает переход t через свойство, что все входные позиции имеют достаточное количество маркеров (показанных на фигурах точками), «равное или большее», чем кратности на их соответствующих дугах к t. Один и только один раз переход активируется, переход срабатывает. В этом примере запуск перехода t генерирует карту, для которой настроена маркировка M 1 в изображении M 0, и в результате получается сеть Петри PN 1, как показано на нижнем рисунке. На схеме правило активации перехода может быть охарактеризовано путем вычитания количества токенов из его входных позиций, равного кратности соответствующих входных дуг, и накопления нового количества токенов в выходных местах, равного кратности соответствующих входных дуг. выходные дуги.
Замечание 1. Точное значение «равно или больше» будет зависеть от точных алгебраических свойств сложения, применяемого к Z в правиле увольнения, где тонкие изменения алгебраических свойств могут привести к другим классам Сети Петри; например, алгебраические сети Петри.
Следующее формальное определение частично основано на (Peterson 1981). Существует множество альтернативных определений.
A Граф сети Петри (который некоторые называют сетью Петри, но см. Ниже) представляет собой кортеж из 3- , где
Отношение потока - это набор дуг: . Во многих учебниках дуги могут иметь только кратность 1. Эти тексты часто определяют сети Петри с использованием F вместо W. При использовании этого соглашения a Сетевой граф Петри - это двудольный мультиграф с узловыми разбиениями S и T.
Предварительная установка перехода t - это набор его входных позиций: ; его пост-набор - это набор его выходных мест: . Определения pre- и postset мест аналогичны.
Маркировка сети Петри (графа) - это мультимножество ее мест, т. е. отображение . Мы говорим, что маркировка присваивает каждому месту количество маркеров.
A Сеть Петри (называемая маркированной Сеть Петри некоторыми, см. Выше) представляет собой набор из 4 элементов , где
Словами:
Обычно нас интересует, что может произойти, если переходы могут непрерывно огонь в произвольном порядке.
Мы говорим, что отметка M 'достижима из отметки M за один шаг, если ; мы говорим, что он достижим из M, если , где - это рефлексивное переходное замыкание из ; то есть, если до него можно добраться за 0 или более шагов.
Для (отмеченной) сети Петри , нас интересуют запуски, которые могут выполняться, начиная с начальной маркировки . Его набор меток достижимости - это множество
График достижимости N - это отношение перехода ограничено доступной маркировкой . Это пространство состояний сети.
Последовательность срабатывания сети Петри с графом G и начальной маркировкой - это последовательность переходов такой, что . Набор последовательностей срабатывания обозначается как .
Как уже отмечалось, обычным вариантом является запрет на кратность дуги и замена мешок дуг W с простым набором, называемым отношением потока, . Это не ограничивает выразительной силы, поскольку оба могут представлять друг друга.
Другой распространенный вариант, например in, Desel and Juhás (2001), позволяет определять мощности на местах. Это обсуждается ниже в разделе расширений.
Маркировка сети Петри можно рассматривать как векторы неотрицательных целых чисел длины .
Его отношение перехода можно описать как пару по матрицы :
Тогда их разница
можно использовать для описания достижимых отметок в терминах умножения матриц следующим образом. Для любой последовательности переходов w напишите для вектора, который отображает каждый переход на его количество вхождений в w. Тогда у нас есть
Обратите внимание, что должно требоваться, чтобы w была последовательностью срабатывания; разрешение произвольных последовательностей переходов обычно дает больший набор.
(б) Пример сети ПетриОдна вещь, которая делает сети Петри интересными, заключается в том, что они обеспечивают баланс между мощностью моделирования и анализируемостью: многие вещи, которые хотелось бы знать о параллельных системах, могут быть автоматически определены для сетей Петри, хотя некоторые из этих вещей очень дорого определить в общий случай. Было изучено несколько подклассов сетей Петри, которые все еще могут моделировать интересные классы параллельных систем, в то время как эти проблемы становятся проще.
Обзор таких проблем принятия решений с результатами разрешимости и сложности для сетей Петри и некоторых подклассов можно найти в Esparza and Nielsen (1995).
проблема достижимости для сетей Петри состоит в том, чтобы решить, учитывая сеть Петри N и маркировку M, .
Очевидно, это вопрос обхода графа достижимости, определенного выше, до тех пор, пока мы не достигнем запрошенной маркировки или не узнаем, что ее больше нельзя найти. Это сложнее, чем может показаться на первый взгляд: график достижимости, как правило, бесконечен, и нелегко определить, когда можно безопасно остановиться.
Фактически, эта проблема была EXPSPACE -сложной за много лет до того, как была показана вообще разрешимость (Mayr, 1981). Продолжают публиковаться статьи о том, как это сделать эффективно. В 2018 году Czerwinski et al. улучшил нижнюю границу и показал, что проблема не в ЭЛЕМЕНТАРНОЙ.
Хотя достижимость кажется хорошим инструментом для поиска ошибочных состояний, для практических задач построенный граф обычно имеет слишком много состояний для вычисления. Для решения этой проблемы обычно используется линейная временная логика в сочетании с табличным методом, чтобы доказать, что такие состояния не могут быть достигнуты. Линейная темпоральная логика использует, чтобы определить, действительно ли состояние может быть достигнуто, путем нахождения набора необходимых условий для достижения состояния и последующего доказательства того, что эти условия не могут быть выполнены.
Сети Петри можно описать как имеющие разную степень живучести . Сеть Петри называется -live тогда и только тогда, когда все его переходы -live, где переход
Обратите внимание, что требования становятся все более строгими: -liveness подразумевает -живость для .
Эти определения соответствуют обзору Мураты, в котором дополнительно используется -live как термин для мертвых.
Место в сети Петри называется k-ограниченным, если оно не содержит более k токенов во всех достижимых маркировках, включая начальную маркировку; считается безопасным, если он 1-ограничен; он ограничен, если он k-ограничен для некоторого k.
(отмеченная) сеть Петри называется k-ограниченной, безопасной или ограниченной, если все ее места есть. Сеть (граф) Петри называется (структурно) ограниченной, если она ограничена для всех возможных начальных разметок.
Обратите внимание, что сеть Петри ограничена тогда и только тогда, когда ее граф достижимости конечен.
Ограниченность разрешима, глядя на , покрывающее, путем построения Дерева Карпа –Миллера.
Может быть полезно явно наложить ограничение на места в данной сети. Это можно использовать для моделирования ограниченных системных ресурсов.
Некоторые определения сетей Петри явно допускают это как синтаксическую особенность. Формально сети Петри с емкостью мест можно определить как кортежи , где - сеть Петри, назначение пропускной способности (некоторым или всем) местам, и отношение перехода является обычным ограничено маркировкой, в которой каждое место с емкостью имеет не более указанного количества жетонов.
Неограниченная сеть Петри, N.Например, если в сети N обоим разрядам назначена емкость 2, мы получаем сеть Петри с емкостью мест, скажем, N2; его график достижимости отображается справа.
Двуограниченная сеть Петри, полученная расширением N с помощью "встречных мест".В качестве альтернативы, места могут быть ограничены путем расширения сети. Точнее, место можно сделать k-ограниченным, добавив «встречное место» с потоком, противоположным потоку места, и добавив жетоны, чтобы получить сумму в обоих местах k.
Помимо дискретных событий, существуют сети Петри для непрерывных и гибридных дискретно-непрерывных процессов, которые полезны в дискретных, непрерывных и гибридных теория управления и относящиеся к дискретным, непрерывным и гибридным автоматам.
Существует множество расширений сетей Петри. Некоторые из них полностью обратно совместимы (например, цветные сети Петри ) с исходной сетью Петри, некоторые добавляют свойства, которые не могут быть смоделированы в исходном формализме сети Петри (например, синхронизированные сети Петри). Хотя обратно-совместимые модели не расширяют вычислительную мощность сетей Петри, они могут иметь более сжатые представления и могут быть более удобными для моделирования. Расширения, которые нельзя преобразовать в сети Петри, иногда бывают очень мощными, но обычно им не хватает всего набора математических инструментов, доступных для анализа обычных сетей Петри.
Этот термин используется для обозначения многих формализмов сетей Петри, которые расширяют базовый формализм сетей P / T; сюда входят цветные сети Петри, иерархические сети Петри, такие как Сети внутри сетей, и все другие расширения, описанные в этом разделе. Этот термин также используется специально для типа цветных цепей, поддерживаемых CPN Tools.
Краткий список возможных расширений:
Существует еще много расширений для сетей Петри, однако важно иметь в виду, что, поскольку сложность Чем больше возрастает сеть с точки зрения расширенных свойств, тем сложнее использовать стандартные инструменты для оценки определенных свойств сети. По этой причине рекомендуется использовать наиболее простой тип цепи, возможный для данной задачи моделирования.
Вместо того, чтобы расширять формализм сети Петри, мы также можем посмотреть на его ограничение и посмотреть на определенные типы сетей Петри, полученные путем ограничения синтаксиса в конкретном путь. Обычные сети Петри - это сети, в которых веса всех дуг равны 1. Ограничивая далее, обычно используются и изучаются следующие типы обычных сетей Петри:
(WF-сети) - это подкласс сетей Петри, предназначенный для моделирования рабочего процесса действий процесса. Переходы WF-net назначаются задачам или действиям, а места назначаются предварительным / пост-условиям. У WF-сетей есть дополнительные структурные и эксплуатационные требования, в основном добавление одного места ввода (источника) без предыдущих переходов и места вывода (приемника) без последующих переходов. Соответственно, могут быть определены маркировки начала и завершения, которые представляют состояние процесса.
WF-сети имеют свойство soundness, указывающее, что процесс с меткой начала из k токенов в исходном месте может достичь состояния завершения, отмеченного k токенами в своем месте приемника ( определяется как k-звук WF-net). Кроме того, все переходы в процессе могут срабатывать (т.е. для каждого перехода существует достижимое состояние, в котором переход разрешен). Общий звук (G-звук) WF-сеть определяется как k-звук для каждого k>0.
Направленный path в сети Петри определяется как последовательность узлов (мест и переходов), соединенных направленными дугами. Элементарный путь включает каждый узел в последовательности только один раз.
A хорошо управляемая сеть Петри - это сеть, в которой нет полностью различных элементарных путей между местом и переходом (или переходом и местом), т. Е. Если есть два пути между парой узлов, то эти пути имеют общий узел. Ациклическая хорошо управляемая WF-сеть - это звук (G-звук).
Расширенная WF-сеть - это сеть Петри, которая состоит из WF-сети с дополнительным переходом t (переход с обратной связью). Место стока соединено как входное место перехода t и место источника как его выходное место. Запуск перехода вызывает итерацию процесса (Примечание: расширенная WF-сеть не является WF-сетью).
WRI (Хорошо обрабатывается с помощью регулярных итераций) WF-сеть, является расширенной ациклической хорошо- обработал WF-net. Сеть WRI-WF может быть построена как композиция сетей, то есть путем замены перехода в сети WRI-WF подсетью, которая является сетью WRI-WF. Результат - тоже WRI-WF-net. WRI-WF-сети являются G-звуком, поэтому, используя только строительные блоки WRI-WF-net, можно получить WF-сети, которые имеют G-звук по конструкции.
Матрица структуры проекта (DSM) может моделировать взаимосвязи процессов и использоваться для планирования процессов. DSM-сети являются воплощением планов на основе DSM в рабочие процессы с помощью сетей Петри и эквивалентны WRI-WF-сетям. Процесс построения DSM-сети обеспечивает свойство прочности полученной сети.
Были предложены другие способы моделирования параллельных вычислений, включая системы сложения векторов, взаимодействующие конечные автоматы, Технологические сети Кана, алгебра процессов, модель акторов и теория трассировки. Различные модели обеспечивают компромисс между такими понятиями, как композиционность, модульность и локальность.
Подход к связи некоторых из этих моделей параллелизма предложен в главе Винскеля и Нильсена.
На Викискладе есть медиафайлы, связанные с сетями Петри. |