Пространство состояний сети Петри
Состояние сети Петри определяется ее маркировкой. Запуск перехода изменяет состояние сети Петри посредством изменения маркировки сети. Пространство состояний сети Петри, обладающей n позициями, есть множество всех маркировок, т.е. N n. Изменение в состоянии, вызванное запуском перехода, определяется функцией изменения δ, которую мы назовем функцией следующего состояния. Когда эта функция применяется к маркировке μ (состоянию) и переходу tj, она образует новую маркировку (состояние), которая получается при запуске перехода tj в маркировке μ. Так как tj может быть запущен только в том случае, когда он разрешен, то функция δ(μ, tj) не определена, если tj не разрешен в маркировке μ. Если же tj разрешен, то δ(μ, tj) = μ', где μ' есть маркировка, полученная в результате удаления фишек из входов tj и добавлением фишек в выходы tj.
Определение 1.8. Функция следующего состояния δ : N n Т → N n для сети Петри С = (Р, Т, I, О) с маркировкой μ и. и переходом tj Т определена тогда и только тогда, когда μ ( pi ) ≥ #( pi, I(tj)) . для всех pi P. Если
δ(μ, tj) определена, то δ(μ, tj) = μ', где для μ'( pi ) = μ( pi ) – #( pi, I(tj)) + #( pi, O(tj)). для всех pi P.
Пусть дана сеть Петри С = (Р, Т, I, О) с начальной маркировкой μ0. Эта сеть может быть выполнена последовательными запусков переходов. Запуск разрешенного перехода tj в начальной маркировке образует новую маркировку μ1 = δ(μ0, tj). В этой новой маркировке можно запустить любой другой разрешенный переход, например tk, образующий новую маркировку μ2 = δ(μ1, tk). Этот процесс будет продолжаться до тех пор, пока в маркировке будет существовать хотя бы один разрешенный переход. Если же получена маркировка, в которой ни один переход не разрешен, то никакой переход не может быть запущен, функция следующего состояния не определена для всех переходов, и выполнение сети должно быть закончено.
При выполнении сети Петри получаются две последовательности: последовательность маркировок (μ0, μ1, μ2, ...) и последовательность переходов., которые были запущены (tj0, tj1, tj2, ...). Эти две последовательности связаны следующим соотношением: δ(μk, tjk) = μk+1 для k = 0, 1, 2, ... . Имея последовательность переходов и μ0 легко получить последовательность маркировок сети Петри, а имея последовательность маркировок, легко получить последовательность переходов, за исключением нескольких вырожденных случаев. Таким образом, обе эти последовательности представляют описание выполнения сети Петри.
Пусть некоторый переход в маркировке μ разрешен и, следовательно, может быть запущен. Результат запуска перехода в маркировке μ есть новая маркировка μ'. Говорят, что μ' является непосредственно достижимой из маркировки μ, иными словами, состояние μ' непосредственно получается из состояния μ.
Определение 1.9. Для сети Петри С = (Р, Т, I, О) с маркировкой μ маркировка μ' называется непосредственно достижимой из μ, если существует переход tj Т, такой, что δ(μ, tj) = μ'.
Можно распространить это понятие на определение множества достижимых маркировок данной маркированной сети Петри. Если μ' непосредственно достижима из μ, a μ" – из μ', говорят, что μ" достижима из μ. Определим множество достижимости R(С, μ) сети Петри С с маркировкой μ как множество всех маркировок, достижимых из μ. Маркировка μ' принадлежит R(C, μ), если существует какая-либо последовательность запусков-переходов, изменяющих μ на μ'.
Определение 1.10. Множество достижимости R(C, μ) для сети Петри С = (Р, Т, I, О) ) с маркировкой μ есть наименьшее множество маркировок, определенных следующим образом:
1. μ R(C, μ);
2. Если μ' R(C, μ) и μ" = δ(μ', tj) для некоторого tj Т, то μ" R(C, μ).
Для сети Петри, изображенной на рис. 1.17, и маркировки μ = (1, 0, 0) непосредственно достижимыми являются две маркировки: (0, 1, 0) и (1, 0, 1). Из (0, 1, 0) нельзя достичь ни одной маркировки, так как ни один переход не разрешен. Из (1, 0, 1) можно получить (0, 1, 1) и (1, 0, 2). Далее мы покажем, что множество достижимости R(C, μ) имеет следующий вид: {(1, 0, n), (0, 1, n) | n ≥ 0}.
Рис. 1.17. Маркированная сеть Петри
Удобно распространить функцию следующего состояния на отображение маркировки и последовательности переходов в новую маркировку. Для последовательности переходов (tj1, tj2, …, tjk) и маркировки μ маркировка μ' = δ(μ, tj1, tj2, …, tjk) есть результат запусков: сначала – tj1, затем – tj2 и т.д. до tjk. (Такая операция, конечно, возможна только в том случае, если каждый переход к моменту его запуска разрешен.)
Определение 1.11. Расширенная функция следующего состояния определяется для маркировки μ и последовательности переходов σ Т* (где Т* – множество всех подмножеств множества (булеан) переходов) следующими соотношениями: δ(μ, tj, σ) = δ(δ(μ, tj), σ), δ(μ, λ) = μ. Обычно мы применяем эту расширенную функцию.
Упражнения
1. Найдите расширенную входную и выходную функции сетей Петри рис. 1.2 – 1.4.
2. Постройте графы сетей Петри, двойственные к сетям Петри, показанным на рис. 1.6 и 1.7.
3. Постройте граф сети Петри для следующей структуры сети Петри:
P = {p1, p2, p3, p4}, T = {t1, t2, t3, t4, t5},
I(t1) = { } O(t1) = { p1}
I(t2) = {p1} O(t2) = { p2}
I(t3) = {p2, p4} O(t3) = {p1, p3}
I(t4) = { } O(t4) = {p3}
I(t5) = {p3} O(t4) = {p4}
4. Постройте граф сети Петри для следующей структуры сети Петри:
P = {p1, p2}, T = {t1, t2, t3,},
I(t1) = {p1} O(t1) = { p1, p2}
I(t2) = {p1} O(t2) = { p2}
I(t3) = {p2} O(t3) = {}
5. Найдите структуру сети Петри, соответствующую графу сети Петри на рис. 1. 18. Определите структуру сети Петри для графа на рис. 1.19.
6. Найдите структуру инверсной сети Петри, соответствующую графу сети Петри на рис. 1.18 и графу на рис. 1.19.
7. Опишите мультиграфы сети Петри в виде G = (V, А), для графов сети Петри на рис. 1. 26 и рис. 1.27.
8. По сети Петри, заданной четверкой C = (P, T, I, O) (упражнение 3) построить двойственную ей сеть Петри в виде графа и четверки C = (P, T, I, O).
9. Найти расширенную входную и выходную функции сети Петри на рис. 1.19
10. Для сети Петри, заданной в виде графа (рис. 1.18) записать теоретико-формальное представление в виде четверки C = (P, T, I, O)
11. По графу сети Петри построить двойственную ей сеть Петри в виде графа и четверки C = (P, T, I, O).
12. По графу сети Петри (рис. 1.19) построить ее теоретико-формальное представление в виде четверки C = (P, T, I, O) и описать граф в виде G = (V, A).
13. Для маркированной сети Петри, граф которой изображен на рис. 1.20, представить маркировку как функцию и как n-вектор.
Рис. 1.18. Граф сети Петри Рис. 1.19. Граф сети Петри
14. Нарисуйте граф сети Петри для следующей структуры
P = {p1, p2, p3, p4}, T = {t1, t2, t3, t4},
I(t1) = { } O(t1) = { p1, p1, p1, p1, p2}
I(t2) = {p2} O(t2) = { p1, p1, p1, p1, p1, p1, p3}
I(t3) = {p1, p1, p1, p1, p1, p1} O(t3) = {p2, p2, p2, p2, p4, p4}
I(t4) = {p3, p4, p4, p2} O(t4) = {}
15. Изобразите инверсную сеть Петри для сетей Петри, приведенных на рис. 1.12 и рис. 1.13.
16. Для маркированной сети Петри (рис. 1.15) представьте маркировку как функцию и как вектор.
17. Для структуры сети Петри (рис. 1.2) изобразите граф сети Петри и укажите на графе маркировку μ = (1, 0, 1, 1, 0, 0).
18. Изобразите маркировку μ = (137, 22, 2, 0, 14) для сети Петри на рис. 1.15.
19. Какие переходы разрешены в маркированной сети Петри на рис. 1.13, рис. 1.15, рис. 1.16?
20. Какая маркировка получится при запуске разрешенных переходов tj в маркированной сети Петри на рис. 1.13, рис. 1.15, рис. 1.16?
21. Можно ли запустить переходы в сети Петри на рис. 1.20? Какие?
22. Определите последовательность маркировок для маркированной сети Петри (рис. 1.21) и последовательности переходов t1, t2, t3, t4, t5 . Как выглядит соответствующая последовательность переходов для последовательности маркировок (1, 0, 0), (0, 0, 1), (0, 0, 0)?
Рис. 1.20. Маркированная сеть Петри Рис. 1.21. Маркированная сеть Петри
23. Для маркированной сети Петри M = (P, T, I, O, µ) рис. 1.13 установить маркировку (1, 1, 1, 1, 1) и определить все функции следующего состояния δ(µ, tj).
24. Определить последовательность маркировок µ0, µ1, µ2... для последовательности переходов t2, t4, t5, t6, t1, t4 в сети Петри на рис. 1.15
25. Определить последовательность переходов tj1, tj2, tj3… для заданной последовательности маркировок (0, 1, 0, 0) → (1, 1, 0, 0) → (2, 1, 0, 0) → (3, 1, 0, 0) → (3, 0, 1, 0) → (2, 0, 1, 0) → (1, 0, 1, 0) → (0, 0, 1, 0) в сети Петри рис. 3.5.
26. Определить возможные последовательности маркировок и переходов для сети Петри на рис. 1.21.
27. Определить все непосредственно достижимые маркировки для сети Петри на рис. 1.22:
28. Определить множество достижимости для сети Петри на рис. 1.23.
Рис. 1.22. Маркированная сеть Петри Рис. 1.21. Маркированная сеть Петри
29. Определить расширенную функцию следующего состояния δ(μ, t1, t1, t1, t1, t2) для сети Петри на рис. 1.23.
30. Построить сеть Петри для перевода двоичного числа в десятичное.
31. Придумать игру на сети Петри, используя понятия фишек и правила запусков.
Дата добавления: 2016-04-11; просмотров: 1906;