Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
26
Добавлен:
16.04.2013
Размер:
791.04 Кб
Скачать
      1. Алгоритм работы сети Петри.

Допустим, что в некоторый момент времени t известна разметка сети (т.е. количество меток в местах-состояниях) и множество уже активных мест-переходов TA. Нас интересуют прогнозы времени завершения активности последних, которые легко вычислить, т.к. нам известны их задержки. Следовательно, мы можем сформировать рабочую таблицу, в дальнейшем называемую “Календарь событий”, с заголовком EС={TN,TH,TK}, где TH – значения начальных моментов времени активности мест-переходов, а TK – прогнозы моментов времени завершения активности.

1. Если “Календарь событий” упорядочен по возрастанию значений в поле TK, то не составляет труда выделить переходы, которые завершают свою работу, т.е. TK = t. Эти места-переходы должны сбросить свои метки в выходные места-состояния, после чего их удаляют из калентаря событий в протокол активности. Можно считать, что эти содытия произошли в момент времени t-.

2. Мы проверяем на момент времени t наличие внешних воздействий и если они есть, выполняем их. При этом если не удалось забрать метки из места-состояния по причине их недостаточности, то берем их сколько сможем и формируем на остаток новое, “отложенное” внешнее событие.

3. К моменту времени t+ мы имеем последствия все воздействий на места-состояния. Предстоит определить, каким образом оставшиеся в них метки инициируют активности мест-переходов. Дело в том, что между местами переходами возможна борьба за одни и те же ресурсы – метки. Эти коллизии мы рассмотрим отдельно. А пока мы можем считать, что определили множество активизирующихся мест-переходов. Они захватывают положенные им метки и попадают в “Календарь событий”.

4. В “Календаре событий” мы находим ближайший прогноз окончания активности места-перехода по возрастанию к моменту t, а в протоколе внешних воздействий, аналогично – ближайшее воздействие. Выбираем из них минимальное как новое значение t. После этого повторяется описанния нами процедура.

      1. Коллизии в работе сети Петри.

Примером коллизии будет случай, данный на рисунке заголовка. Очевидно, что единственная метка в месте-состоянии S2 может быть использована либо местом-переходом Т1 (тогда Т2 – будет пассивен), либо метом-переходом Т2 (и будет пассивен Т1). Какой вариант выбрать?

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

  1. Средства выполнения работы.

В Вашем распоряжении рабочее место, т.е. достаточно мощный персональный компьютер, который позволяет отлаживать программы на языке С++ (т.е. MS Visial C++ не ниже 6.0). Предполагается, что Вы блестяще (в крайнем случае - хорошо) знаете С++ в объеме курса Дейтел&Дейтел. Накануне лабораторной работы Вы ознакомились с понятиями сети Петри в трактовке раздела 2 данного методического руководства. Перед Вами лежат результаты Лаб.раб. №01.01.00 – распечатка IDEF0-диаграмм и описание примера - модели проблемной ситуации в вербальной форме и текст содержания Журнала Системного Анализа (ЖСА).

Соседние файлы в папке Методические указания