- •Ю. А. Кравченко cals- и case-технологии таганрог 2005
- •Оглавление
- •Часть 2
- •8.5. Упражнения к части 2……………………………………100
- •Часть 3
- •Глава 9. Подходы реорганизации
- •Глава 10. Определение необходимости
- •10.6. Упражнения к части 3…………………………………..129
- •Аббревиатура
- •Предисловие
- •Введение
- •Часть 1
- •Глава 1. Основы cals - технологий
- •1.1. Основы информационной интеграции
- •1.2. Информационная поддержка изделий
- •1.3. Электронный технический документ (этд)
- •1.5. Система менеджмента качества (смк)
- •1.6. Интегрированная логистическая поддержка (илп)
- •1.7. Нормативная база cals-технологий
- •Глава 2. Стандарт step
- •2.1. Принципы создания стандарта step
- •2.2. Основные компоненты step
- •2.3. Методология тестирования
- •2.4. Схема использования стандарта step
- •Глава 3. Язык описания данных express
- •3.1. Основы языка
- •3.2. Свойства языка express
- •3.3. Объектно-ориентированный подход
- •3.4. Компоненты языка
- •3.5. Типы данных
- •3.6. Понятия
- •3.7. Упражнения к части 1
- •Часть 2
- •Глава 4. Основы имитационного моделирования сложных динамических систем
- •4.1. Теория массового обслуживания
- •4.2. Имитационное моделирование смо
- •4.3. Событийный метод моделирования
- •4.4. Сети Петри
- •Глава 5. Основы сase-технологий
- •5.1. Эволюция case-средств
- •5.2. Case–модель жизненного цикла программного обеспечения
- •5.3. Состав, структура и особенности case-средств
- •5.4. Графические модели
- •5.5. Контроль ошибок
- •5.6. Организация репозитария
- •5.7. Поддержка процесса проектирования и разработки
- •Глава 6. Классификация case-средств
- •Глава 7. Основы проектирования информационных систем (ис)
- •7.1. Основы методологии и технологии
- •Глава 8. Структурный подход проектирования информационных систем (ис)
- •8.1. Основные принципы структурного подхода
- •8.2. Методология sadt
- •8.2.1. Иерархия диаграмм
- •8.2.2. Типы связей между функциями
- •8.3. Построение модели анализируемой ис
- •8.3.1. Внешние сущности
- •8.3.2. Системы и подсистемы
- •8.3.3. Процессы
- •8.3.4. Накопители данных
- •8.3.5. Потоки данных
- •8.3.6. Иерархия диаграмм потоков данных
- •8.4. Case-метод Баркера моделирования данных
- •Р ис. 41. Рекурсивная связь [1]
- •8.5. Упражнения к части 2
- •Часть 3
- •Глава 9. Подходы реорганизации деятельности предприятия
- •9.1. Методика bsp (Business System Planning)
- •9.2. Подход cpi / tqm
- •9.3. Требования смм (Capability Maturity Model)
- •Глава 10. Определение необходимости внедрения case-средств
- •10.1. Определение потребностей внедрения
- •10.2. Анализ существующих case-средств
- •10.3. Критерии успешного внедрения
- •10.4. Стратегии внедрения case-средств
- •10.5. Реализация пилотного проекта
- •10.5.1. Основные цели реализации
- •10.5.2. Характеристики пилотного проекта
- •10.5.3. Разработка пилотного проекта
- •10.5.4. Внедрение выбранного на основе пилотного проекта case - средства
- •10.5.5. Анализ результатов внедрения case-средств
- •10.6. Упражнения к части 3
- •Заключение
- •Контрольные вопросы
- •25. Контроль ошибок.
- •27. Поддержка процесса проектирования и разработки.
- •38. Методология sadt.
- •Библиографический список
4.4. Сети Петри
Сети Петри – это аппарат для моделирования динамических дискретных систем. Динамическая система - это система, состояние которой изменяется с течением времени. В настоящее время сети Петри применяются в основном в моделировании [7].
Развитие теории сетей Петри проводилось по двум направлениям. Формальная теория сетей Петри занимается разработкой основных средств, методов и понятий, необходимых для применения сетей Петри. Прикладная теория сетей Петри связана главным образом с применением сетей Петри к моделированию систем, их анализу и получающимся в результате этого глубоким проникновением в моделируемые системы.
Моделирование в сетях Петри осуществляется на событийном уровне. Определяются, какие действия происходят в системе, какие состояние предшествовали этим действиям и какие состояния примет система после выполнения действия. Выполнения событийной модели в сетях Петри описывает поведение системы. Анализируя результаты выполнения, можно сказать о том, в каких состояниях пребывала или не пребывала система, какие состояния в принципе не достижимы.
Сеть Петри определяется как четверка <Р, Т, I, O>, где Р и Т - конечные множества позиций и переходов, I и O - множества входных и выходных функций. Другими словами, сеть Петри представляет собой двудольный ориентированный граф, в котором позициям Р соответствуют вершины, изображаемые кружками, а переходам Т - вершины, изображаемые утолщенными черточками; функциям I соответствуют дуги, направленные от позиций к переходам, а функциям О - дуги, направленные от переходов к позициям.
В сетях Петри вводятся объекты двух типов: динамические, которые изображаются метками (маркерами) внутри позиций, и статические, которые соответствуют вершинам сети Петри.
Маркировка - распределение маркеров по позициям. Маркеры могут перемещаться в сети. Каждое изменение маркировки называют событием, причем каждое событие связано с определенным переходом. События происходят мгновенно и разновременно при выполнении некоторых условий.
Каждому условию в сети Петри соответствует определенная позиция. Совершению события соответствует срабатывание перехода, при котором маркеры из входных позиций этого перехода перемещаются в выходные позиции. Последовательность событий образует моделируемый процесс.
Рис 12. Фрагмент сети Петри
Правила срабатывания переходов (рис. 12) конкретизируют следующим образом: переход срабатывает, если для каждой из его входных позиций выполняется условие Ni >= Ki, где Ni - число маркеров в i-й входной позиции, Ki - число дуг, идущих от i-й позиции к переходу; при срабатывании перехода число маркеров в i-й входной позиции уменьшается на Ki, а в j-й выходной позиции увеличивается на Мj где Мj - число дуг, связывающих переход с j-й позицией.
На рис. 12 показан пример распределения маркеров по позициям. Для срабатывания перехода эту маркировку можно записать в виде (2, 1, 3, 1) или (2131). После срабатывания перехода маркировка принимает вид (0,0,0,4).
Возможно ввести ряд дополнительных правил и условий в алгоритмы моделирования, получая ту или иную разновидность сетей Петри. Так, прежде всего, полезно ввести модельное время, чтобы моделировать не только последовательность событий, но и их привязку ко времени. Это осуществляется приданием переходам веса - продолжительности (задержки) срабатывания, которую можно определять, используя задаваемый при этом алгоритм. Полученную модель называют временной сетью Петри. Если задержки являются случайными величинами, то сеть называют стохастической. В стохастических сетях возможно введение вероятностей срабатывания возбужденных переходов.
Рис. 13. Конфликтная ситуация.
Так, на рис. 13 представлен фрагмент сети Петри, иллюстрирующий конфликтную ситуацию: маркер в позиции р2 может запустить либо переход t1, либо переход t2. В стохастической сети предусматривается вероятностный выбор срабатывающего перехода в таких ситуациях.
Сеть называют функциональной, если задержки определяются как функции некоторых аргументов, которыми могут быть количество маркеров в каких-либо позициях, состояния некоторых переходов и т.п.
Во многих задачах динамические объекты могут быть нескольких типов, и для каждого типа нужно вводить свои алгоритмы поведения в сети. В этом случае каждый маркер должен иметь хотя бы один параметр, обозначающий тип маркера. Такой параметр обычно называют цветом; цвет можно использовать как аргумент в функциональных сетях. Сеть Петри при этом называют цветной. Среди других разновидностей сетей Петри следует упомянуть ингибиторные сети, характеризующиеся тем, что в них возможны (ингибиторные) дуги. Наличие маркера во входной позиции связанно с переходом ингибиторной дугой, означает запрещение срабатывания перехода [7].
Анализ сетей Петри
При имитационном моделировании сложных систем на базе сетей Петри задают входные потоки заявок и определяют соответствующую реакцию системы. Выходные параметры рассчитывают путем обработки накопленного при моделировании статистического материала.
Возможен и другой подход к использованию сетей Петри для анализа сложных систем. Он не связан с имитацией процессов и основан на исследовании таких свойств сетей Петри, как ограниченность, безопасность, сохраняемость, достижимость, живость.
Ограниченность (или К-ограниченность) имеет место, если число меток в любой позиции сети не может превысить значения К. При проектировании автоматизированных систем определение К позволяет обоснованно выбирать емкости накопителей. Возможность неограниченного роста числа меток свидетельствует об опасности неограниченного роста длин очередей.
Безопасность - частный случай ограниченности, а именно это l -ограниченность. Если для некоторой позиции установлено, что она безопасна, то ее можно представлять одним триггером.
Сохраняемость характеризуется постоянством загрузки ресурсов, т.е.
Ai Ni = const,
где Ni - число маркеров в i-й позиции; Ai - весовой коэффициент.
Достижимость Mk->Mj характеризуется возможностью достижения маркировки Mj из состояния сети, характеризуемого маркировкой Mk.
Живость сети Петри определяется возможностью срабатывания любого перехода при функционировании моделируемого объекта. Отсутствие живости либо означает избыточность аппаратуры в проектируемой системе, либо свидетельствует о возможности возникновения зацикливаний, тупиков, блокировок [7].
В основе исследования перечисленных свойств сетей Петри лежит анализ достижимости.
Один из методов анализа достижимости любой маркировки из состояния М0 - построение графа достижимости. Начальная вершина графа отображает М0, а остальные вершины соответствуют другим маркировкам. Дуга из Mi в Мj означает событие Мi -> Мj и соответствует срабатыванию перехода t. В сложных сетях граф может содержать чрезмерно большое число вершин и дуг. Однако при построении графа можно не отображать все вершины, так как многие из них являются дублями (действительно, от маркировки Mk всегда порождается один и тот же подграф независимо от того, из какого состояния система пришла в Mk). Тупики обнаруживаются по отсутствию разрешенных переходов из какой-либо вершины, т.е. по наличию листьев — терминальных вершин. Неограниченный рост числа маркеров в какой-либо позиции свидетельствует о нарушениях ограниченности.
Приведем пример анализа достижимости,
На рис. 14, а показана сеть Петри, а на рис. 14, б - соответствующий ей граф достижимых разметок.
Вершины графа на рис. 14, б соответствуют маркировкам (состояниям сети Петри), представленным в виде последовательности цифр, цифры означают количества меток в позициях, перечисляемых в порядке р1, р2, p3 р4, р5. Дуги помечены обозначениями срабатывающих переходов. Живость сети очевидна, так как срабатывают все переходы, тупики отсутствуют.
а
б
Рис 14. Сеть Петри (а) и граф достижимости (6)[7].