Национальный исследовательский университет "Высшая Школа Экономики"
Опубликован: 19.11.2012 | Доступ: свободный | Студентов: 12633 / 7811 | Длительность: 29:54:00
Специальности: Менеджер, Преподаватель
Лекция 8:

Обработка данных

< Лекция 7 || Лекция 8: 123456 || Лекция 9 >

Основные задачи анализа процессов обработки, решаемые с использованием сетей Петри

В процессе функционирования сети Петри некоторые ее места могут накапливать неограниченное число фишек. Примером такого места может служить место р_2 в сети на рис.8.6. Если интерпретировать места как

Граф разметок сети Петри

Рис. 8.7. Граф разметок сети Петри

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

Определение. Место р в сети Петри N=(Р, Т, F, Ф, М_0) называется ограниченным, если существует число n, такое что для любой достижимой в сети разметки М справедливо неравенство М(р)< n. Сеть N называется ограниченной сетью, если любое ее место ограничено.

Ясно, что множество достижимых разметок R(N) конечно, если и только если N - ограниченная сеть. В сети на рис.8.6 места р_1, и р_3 ограничены, так как каждое из них может содержать не более одной фишки. В то же время место р_2 не ограничено, и поэтому эта сеть не является ограниченной.

Определение. Место р называется безопасным, если для всякой достижимой разметки M \in R(N) выполняется неравенство М(р)<1; соответственно, сеть безопасна, если все ее места безопасны.

Любая достижимая в безопасной сети разметка представляет собой вектор из 0 и 1. Сеть, показанная на рис.8.6, не является безопасной.

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

Определение. Сеть, в которой сумма фишек во всех ее местах остается постоянной в процессе работы сети, то есть

\sum_{p \in P}M_1(p)=\sum_{p \in P}M_2(p),\\
\forall M_1, M_2 \in R(N)

называется сохраняющей (консервативной).

Условие сохранения числа фишек в сети - это очень сильное ограничение. Например, из него немедленно следует, что число входов в каждый переход должно равняться числу выходов (с учетом кратности). Если бы это было не так, запуск перехода изменил бы число фишек в сети.

Часто фишки в сети Петри моделируют различные ресурсы. Однако взаимно однозначного соответствия между фишками и ресурсами нет. Фишка может представлять как один ресурс, так и несколько ресурсов сразу. Во втором случае фишка может использоваться для создания кратных фишек (по одной на ресурс) путем запуска перехода с большим числом выходов, чем входов. Поэтому определение свойства сохраняемости сети целесообразно сделать более общим, заменив простую сумму фишек на сумму с весами. Фишкам, не являющимся важными, можно присвоить нулевой вес; другим фишкам можно присвоить весы 1, 2, 3 или любое другое положительное число.

Определение. Сеть Петри называется сохраняющей (консервативной) по отношению к вектору весов \аlpha=(\alpha_1, \alpha_2, \dots, \alpha_n), где n - число мест в сети, если

\sum_{i=1}^n \alpha_i*M_1(p_1)=\sum_{i=1}^n \alpha_1*M_2(p_1) \; \forall M_1, M_2 \in R(N) ( 8.6)

Сохраняющая сеть Петри является сохраняющей по отношению к вектору весов (1, 1, \dots , 1). Следует исключить из рассмотрения нулевой вектор весов, поскольку все сети являются сохраняющими по отношению к нулевому вектору весов.

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

Переход в сети может сработать при определенных условиях, связанных с разметкой его входных мест. Может оказаться, что для некоторого перехода условие его срабатывания никогда не выполняется, как бы ни функционировала сеть. Такой переход - лишний в сети, его можно исключить без ущерба для работы сети. Может случиться также, что после некоторой последовательности срабатываний переходов сети и соответствующих изменений ее разметки некоторые переходы, в том числе те, которые уже срабатывали, больше никогда не сработают, какие бы варианты достижимых в сети разметок не возникали. Это означает, что в моделируемых системах могут появляться ситуации, тупиковые для некоторых событий. Например, в операционных системах подобные случаи происходят при взаимных блокировках процессов (deadlocks) при недоступности требуемых ресурсов. Таким образом, переходы в сети Петри могут обладать различной активностью, и их можно разбить на категории по уровню активности.

Уровень 0: переход t обладает активностью уровня 0 и называется мертвым, если он никогда не может быть запущен.

Уровень 1: переход t обладает активностью уровня 1 и называется потенциально живым, если существует такая разметка M' \in R(N,M_0), что t разрешен в M'. Уровень 2: переход t обладает активностью уровня 2, если для всякого целого n существует последовательность запусков, в которой t присутствует по крайней мере n раз.

Уровень 3: переход t обладает активностью уровня 3, если существует бесконечная последовательность запусков, в которой t присутствует неограниченно часто.

Уровень 4: переход t обладает активностью уровня 4 и называется живым, если для всякой M' \in R(N,M_0) переход t является потенциально живым для сети Петри N с начальной маркировкой M'.

Сеть Петри называется живой, если все ее переходы являются живыми.

В качестве примера, иллюстрирующего уровни активности, рассмотрим сеть Петри на рис.8.8. Переход t_0 не может быть запущен никогда; он мертвый. Переход t_1 можно запустить только один раз; он обладает активностью уровня 1. Переход t_2 может быть запущен произвольное число раз, но это число зависит от числа запусков перехода t_3. Если мы хотим запустить t_2 пять раз, мы запускаем пять раз t_3, затем t_1 и после этого пять раз t_2. Однако, как только запустится t_1 (t_1 должен быть запущен до того, как будет запущен t_2), число возможных запусков t_2 станет фиксированным. Следовательно, t_2 обладает активностью уровня 2, но не уровня 3. С другой стороны, переход t_3 можно запускать бесконечное число раз, и поэтому он обладает активностью уровня 3, но не уровня 4, поскольку, как только запустится t_1, переход t_3 больше запустить будет нельзя.

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

Рис. 8.8. Сеть Петри, иллюстрирующая различные уровни активности переходов

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

Формально задача о достижимости состоит в следующем: для сети Петри N с начальной разметкой M_0 и заданной разметки M установить справедливость включения M \in R(N,M_0). Иными словами, требуется выяснить, существует ли допустимая последовательность срабатываний переходов \tau =t_{i_1}, t_{i_2} \dots t_{i_k}, переводящая сеть Петри из начальной разметки M_0 в заданную разметку M, то есть М_0^{\tau} \triangleright М.

Близкой по смыслу к задаче о достижимости является задача о покрываемости. Она заключается в том, чтобы для данной сети Петри N с начальной маркировкой M_0 и заданной маркировки M определить, существует ли такая достижимая маркировка M' \in R(N,M_0), что M' \ge M.

Напомним, что отношение M' \ge M истинно, если каждый элемент маркировки M' не меньше соответствующего элемента маркировки M.

< Лекция 7 || Лекция 8: 123456 || Лекция 9 >
Фахруддин хемракулыев
Фахруддин хемракулыев
Шерхон Давлатов
Шерхон Давлатов

Почему тесты (1,2,3..) не работают. Хочу пройти тест но не получается