Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Анализ сетей Петри на основе матричных уравнений



Матричный подход основывается на представлении сети двумя матрицами Д- и Д+, представляющими входную и выходную функции сети. Каждая матрица имеет m строк (по одной на переход) и n столбцов (по одному на позицию). Определим Д-(j,i)=K(Pi,I(tj)), а Д+(j,i)=K(Pi,O(tj)). Д- определяет входы в переходы, Д+ - выходы. K – кратность позиции по входам и выходам.

Введём m - вектор e(j), содержащий нули везде, за исключением j-й компоненты. Переход tj представляется m - вектором e(j).

Тогда переход tj в маркировке М разрешён, если М≥e(j)Д-, а результат запуска перехода tj в маркировке М записывается как:

δ(M,tj)=M - e(j) Д- + e(j) Д+ = M+ e(j)(- Д- + Д+) = M + e(j)Д

где Д = Д+ - Д- - составная матрица изменений.

Тогда для последовательности запусков переходов G = tj1, tj2,…, tjk имеем

δ(M,G) =δ(M, tj1, tj2,…, tjk) = M + e(j1)Д + e(j2)Д + … + e(jk)Д =

= M +[ e(j1) + e(j2) + … + e(jk)]Д = M + f(G)Д (1)

Вектор f(G) = e(j1)+e(j2) …..+e(jk) называется вектором запуска последовательности tj1,tj2,…,tjk. i-й элемент вектора f(G), f(G)i - это число запусков перехода tj в последовательности tj1,tj2,…,tjk. Вектор запусков, следовательно, является вектором с неотрицательными целыми компонентами.

Рассмотрим задачу сохранения при известном векторе взвешивания меток W. Если M0 - начальная маркировка, а M’ - произвольная достижимая маркировка, необходимо, чтобы M0W = M’W. Тогда существует последовательность запусков переходов G, которая переводит сеть из M0 в M’. Поэтому

M’ = δ(M0,G) = M0 + f(G)Д

Следовательно, M0W = M’W = (M0 + f(G) Д) W = M0W + f(G) ДW, поэтому f(G)ДW = 0.

Поскольку это должно быть верно для всех f(G), имеем ДW = 0.

Таким образом, сеть Петри является сохраняющей тогда и только тогда, когда существует такой положительный вектор W, что ДW = 0. Это обеспечивает простой алгоритм проверки сохранения, а также позволяет получать вектор взвешивания W для сохраняющей сети.

Матричная теория является инструментом для решения проблемы достижимости. Пусть маркировка M’ достижима из M0, тогда существует последовательность (возможно пустая) запусков переходов G, которая приводит из M0 к M’. Это означает, что f(G) является неотрицательным целым решением следующего матричного уравнения для X:

M’ = M0 + X Д (*)

Следовательно, если M’ достижима из M0, тогда уравнение (*) имеет решение в неотрицательных целых; если уравнение не имеет решения, тогда M’ недопустима из M0.

ПРИМЕР:


       
       
       

Д- =

       
       
       

Д+=

  -1 -1  
  +2 +1 -1
    -1 +1

Д = Д+ - Д- =

В начальной маркировке M0=(1,0,1,0) переход t3 разрешён и приводит к маркировке M’, где:

  -1 -1  
  +2 +1 -1
    -1 +1

M’=(1,0,1,0)+(0,0,1) =(1,0,1,0)+(0,0,-1,+1)=(1,0,0,1)

Последовательность G= t­­3 t­­2 t­­3 t­­2 t­­1 представляется вектором запусков f(G)=(1,2,2) и получает маркировку M’:

  -1 -1  
  +2 +1 -1
    -1 +1

M’ = (1,0,1,0) + (1,2,2) =(1,0,1,0) +(0,3,-1,0) = (1,3,0,0)

Для определения того, является ли маркировка (1, 8, 0, 1) достижимой из маркировки (1, 0, 1, 0), имеем уравнение

  -1 -1  
  +2 +1 -1
    -1 +1

(1, 8, 0, 1) = (1, 0, 1, 0) + X

  -1 -1  
  +2 +1 -1
    -1 +1

(0,8,-1,1)= X

которое имеет решение X=(0, 4, 5). Это соответствует последовательности G= t3 t2 t3 t2 t3 t2 t3 t2 t3.

Можно показать, что маркировка (1, 7, 0, 1) недостижима из маркировки (1, 0, 1, 0) поскольку матричное уравнение

  -1 -1  
  +2 +1 -1
    -1 +1

(1,7,0,1)=(1,0,1,0) + X

  -1 -1  
  +2 +1 -1
    -1 +1

(0,7,-1,1)= X

не имеет решения.





Дата публикования: 2014-11-03; Прочитано: 333 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.009 с)...