Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Сети Петри(финал) с моими правками

.pdf
Скачиваний:
45
Добавлен:
19.05.2015
Размер:
1.51 Mб
Скачать

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

ДОНСКОЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ Кафедра ПОВТ и АС

Сети Петри.

Методические указания к практическим занятиям по курсу

«Теория вычислительных процессов»

Ростов-на-Дону

2012

Составители Н.С. Могилевская, А.А. Листопадов

Сети Петри. Методические указания по курсу «Теория вычислительных процессов». / Ростов – на – Дону: Издательский центр ДГТУ, 2012, 23 с.

Методические указания предназначены для студентов специальности 090301 «Компьютерная безопасность» и преподавателей, ведущих практические занятия по курсу «Теория вычислительных процессов»; в них содержатся краткие сведения о сетях Петри, с помощью которых моделируются динамические дискретные системы.

Печатается по решению методической комиссии факультета «Информатика и вычислительная техника».

Рецензент: профессор кафедры «Программное обеспечение вычислительной

техники и автоматизированных систем» ДГТУ, канд. тех. наук В.Н. Землянухин

Издательский центр ДГТУ, 2012.

0. Теория комплектов

Теория комплектов — естественное расширение (обобщение) теории множеств. Подобно множеству, комплект — набор элементов из некоторой области. Отличие от множества: комплекты допускают присутствие нескольких экземпляров одного и того же элемента (элемент входит от нуль раз, то есть, не входит в комплект, до любого заданного числа раз)[4].

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

Операции над комплектами:

объединение комплектов А U В: #(x,A U B)=max (#(x,А),#(х, B));

пересечение комплектов А ∩ В: #(x,A ∩ B)=min (#(x,А),#(х, B));

сумму комплектов А+В : # (х, A + В) = # (х, А) + # (х, В);

разность комплектов A—В : # (х, А — В)= # (x,А) —(x, A ∩ В).

Пространство комплектов

Определим область D как множество элементов, из которых составляются комплекты. Пространство комплектов D" есть множество всех таких комплектов, что элементы их принадлежат D и ни один элемент не входит в комплект более n раз.

1.Из x принадлежащему B следует что x принадлежит D .

2.Для любого х #(х, В) ≤ n.

Множество D00 есть множество всех комплектов над областью D без какого-либо ограничения на число экземпляров элемента в комплекте.

1. Общие сведения о сетях Петри

Сети Петри — математический аппарат для моделирования динамических дискретных систем. Впервые описаны Карлом Петри в 1962 году.

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

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

Модель – это представление, как правило, в математических терминах того, что считается наиболее характерным в изучаемом объекте и системе.

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

Граф G сети Петри – есть двудольный ориентированный мультиграф.

G=(V,A)

где V – множество вершин V = (V1,V2,..Vk)

A=(a1,a2,..as) - множество ребер ai=(Vj,Vk)

Множество V может быть разбито на два непересекающихся множества.

Для любой дуги ai=(Vj,Vk)

При графической интерпретации сеть Петри представляет собой двудольный ориентированный граф, состоящий из вершин двух типов — позиций и переходов, соединённых между собой дугами. Вершины одного типа не могут быть соединены непосредственно. В позициях могут размещаться метки (маркеры), способные перемещаться по сети.

Структура сетей Петри

Сеть Петри является четверкой C=(P,T,I,O)

P=(p1,p2,..,pn) – множество ситуаций или позиций. |P|=n. T=(t1,t2,..,tm) – множество переходов. |T|=m.

I: - это входная функция для перехода

I=I(tj), j=от 1 до m

O: - выходная функция. O=O(tj), j=от 1 до m

Кратность входной позиции pi для перехода в pj – это число #(pi,I(tj)), а также

#(pi,O(tj))

Если аргументом входной и выходной функций являются не переходы, а позиции, то также функции называют расширенными функциями входа и выхода.

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

Состояние

Пример. Лекция – перемена.

Маркировка сети Петри.

Динамические свойства сети Петри определяются с помощью маркировки μ. Маркировка – присвоение фишек позициям сети Петри. Фишка означает условие. Если позиция без фишек, то условие этой позиции не выполнено.

фишек на позиции .

Выполнение сетей Петри.

 

 

 

 

 

 

Выполнением

сети Петри управляют фишки. Передвижение фишки из

позиции

в

 

разрешено,

 

 

если

выполняется

 

.

Переход

может быть запущен всякий раз,

когда

он

разрешен.

В

результате

этого

запуска

возникает

.

μ0=(1,1,0,50,2)

μ1=(0,2,1,50,3)

μ2=(0,3,2,48,3)

μ3=(0,2,1,48,3)

Правила

выполнения

сети

Петри

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

Множество достижимости R(C,µ) для сети Петри С = (Р, Т, I, О) с маркировкой µ есть наименьшее множество маркировок, определенных следующим образом: 1. µ из R(C, µ);

2. Если и для некоторого , то .

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

Основными свойствами сети Петри являются:

ограниченность — число меток в любой позиции сети не может превысить некоторого значения K и является k-безопасной;

безопасность — частный случай ограниченности, K не превышает 1;

сохраняемость — постоянство загрузки ресурсов, постоянна. Где — число маркеров в i-той позиции, — весовой коэффициент;

достижимость — возможность перехода сети из одного заданного состояния (характеризуемого распределением меток) в другое;

активность — возможность срабатывания любого перехода при функционировании моделируемого объекта.

Сеть называется безопасной, если все ее позиции безопасны.

Позиция

сети Петри

называется k-безопасной, если для любой

достижимой маркировки

выполняется:

Тупик в сети Петри — это переход (или множество переходов), которые не могут быть запущены.

Переход называется активным, если он не заблокирован (нетупиковый). Это не означает,

что переход разрешен, скорее он может быть разрешенным. Переход

сети Петри С

называется потенциально

запустимым в

маркировке , если существует маркировка

, в которой

разрешен. Переход активен в маркировке

, если потенциально

запустим во всякой маркировке из

. Следовательно, если

переход активен, то

всегда возможно перевести сеть Петри из ее текущей маркировки в маркировку, в которой запуск перехода станет разрешенным.

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

Уровень 0: Переход

обладает активностью уровня 0, если он никогда не может быть

запущен.

 

 

 

 

Уровень 1: Переход

обладает активностью уровня 1, если он потенциально запустим,

т.е. если существует такая

, что разрешен в .

 

Уровень 2: Переход

обладает активностью уровня 2, если для всякого целого n

существует последовательность запусков, в которой

присутствует по крайней мере n

раз.

 

 

 

 

Уровень 3: Переход

обладает активностью уровня 3, если существует бесконечная

последовательность запусков, в которой присутствует неограниченно часто.

Уровень 4: Переход

обладает активностью уровня 4, если для всякой

существует такая последовательность запусков , что

разрешен в

.

Переход, обладающий активностью уровня 0, называется пассивным. Переход, обладающий активностью уровня 4, называется активным. Сеть Петри обладает активностью уровня i, если каждый ее переход обладает активностью уровня i.

В качестве примера, иллюстрирующего уровни активности, рассмотрим сеть Петри на

рис.1. Переход

не может быть запущен никогда; он пассивен. Переход

можно

запустить точно один раз; он обладает активностью уровня 1. Переход

может быть

запущен произвольное число раз, но это число зависит от числа запусков перехода .

Если мы хотим запустить пять раз, мы запускаем пять раз , затем

и после этого пять

раз . Однако, как только запустится

( должен быть запущен до того,

как будет

запущен ), число возможных запусков

станет фиксированным.

Следовательно,

обладает активностью уровня 2, но не уровня 3. С другой стороны,

переход

можно

запускать бесконечное число раз, и поэтому он обладает активностью уровня 3, но не уровня 4, поскольку, как только запустится , больше запустить будет нельзя.

рис.1

2. Построение сетей Петри

Пример сети

рис.2

Определение Маркированная сеть Петри

Маркировка есть присвоение фишек позициям сети Петри.

Фишки присваиваются (можно считать, что они принадлежат) позициям. Количество и положение фишек при выполнении сети Петри могут изменяться. Фишки используются для определения выполнения сети Петри.

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

Маркировка

, может быть также определена как -вектор

, где

и каждое

. Вектор определяет для каждой позиции

сети Петри

количество фишек в этой позиции.

 

Пример маркированной сети.

рис.3

рис.4

рис.5

Правила выполнения сети Петри. Формальное определение и пример.

Выполнением сети Петри управляют количество и распределение фишек в сети. Фишки находятся в кружках и управляют выполнением переходов сети. Сеть Петри выполняется посредством запусков переходов.

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

Переход может запускаться только в том случае, когда он разрешен.

Переход называется разрешенным, если каждая из его входных позиций имеет число фишек по крайней мере равное числу дуг из позиции в переход.

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

Например, если позиции и

служат входами для перехода

, тогда разрешен,

если и

имеют хотя бы по одной фишке.

 

 

Для перехода с входным комплектом

позиция

должна обладать по

крайней мере тремя фишками, для того чтобы

был разрешен.

 

Определение Переход

в маркированной сети Петри

c

маркировкой

разрешен, если для всех

 

 

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