Сетевые модели (N-схемы). Сети Петри
Анализ принципов построения модели сети Петри, используемой при моделировании аппаратного и программного обеспечение ЭВМ. Характеристика графического представления рассматриваемых сетей и их маркировка. Оценка последовательности дискретных событий.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | лекция |
Язык | русский |
Дата добавления | 18.10.2013 |
Размер файла | 210,7 K |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Лекция
по вычислительной техники и программированию
Сетевые модели (N-схемы). Сети Петри
1. Теоретические основы сетей Петри: принципы построения, алгоритмы поведения
Сети Петри были разработаны и используются для моделирования систем, которые содержат взаимодействующие параллельные компоненты, например аппаратное и программное обеспечение ЭВМ, гибкие производственные системы, а также социальные и биологические системы. Впервые сети Петри предложил Карл Адам Петри в своей докторской диссертации "Связь автоматов" в 1962 году. Работа Петри привлекла внимание группы исследователей, работавших под руководством Дж. Денниса над проектом МАС в Массачусетском Технологическом институте. Эта группа стала источником значительных исследований и публикаций по сетям Петри. Полная оценка и понимание современной теории сетей Петри требуют хорошей подготовки в области математики, формальных языков и автоматов. Современный инженер - системных техник должен иметь квалификацию, необходимую для проведения исследований с помощью сетей Петри.
1.1 Введение в теорию комплектов
Сети Петри - инструмент исследования систем. Сети Петри делают возможным моделирование системы математическим представлением ее в виде сети Петри. Математическим аппаратом сетей Петри является теория комплектов.
Теория комплектов представляет собой естественное расширение теории множеств. Как и множество, комплект является набором элементов из некоторой области. Однако в отличие от множества комплекты допускают наличие нескольких экземпляров одного и того же элемента. В отличие от множества, где элемент либо является элементом множества, либо нет, в комплект элемент может входить заданное число раз. Пусть область представляет собой {a,b,c,d}, тогда комплекты над этой областью будут иметь вид:
Основным понятием теории комплектов является функция числа экземпляров. Обозначение (x,B) число х в В т. е., число экземпляров элемента х в В. Если ограничить число элементов в комплекте так, что:
- то получим теорию множеств.
Элемент х является членом комплекта В, если #(x,B) > 0. Аналогично, если # = 0 то х не принадлежит В. Определим пустой комплект 0, не имеющий членов (для всех х: #(x,0) = 0). Под мощностью |В| комплекта В понимается общее число экземпляров в комплекте:
Комплект А является под комплектом комплекта В, если каждый элемент А является элементом В по крайней мере не больше число раз, т. е., тогда и только тогда, когда для всех х:
Два комплекта равны (А = В). Комплект А строго включен в комплект В (АВ), если АВ и А не равно В. Над комплектами определены 4 операции. Операции для двух комплектов А и В:
Назовем множество элементов, из которых составляются комплекты, областью D. Пространство комплектов Dn есть множество всех таких комплектов, что элементы их принадлежат D и ни один из элементов не входит в комплект более n раз. Иначе говоря, для любого В Dn:
Множество D есть множество всех комплектов над областью D, без какого либо ограничения на число экземпляров элемента в комплекте.
1.2 Структура сети Петри
Сеть Петри состоит из 4 компонентов, которые и определяют ее структуру:
- множество позиций Р;
- множество переходов Т;
- входная функция I;
- выходная функция О.
Входная и выходная функции связаны с переходами и позициями. Входная функция I отображает переход tj в множество позиций I(tj), называемых входными позициями перехода. Выходная функция О отображает переход tj в множество позиций О(tj), называемых выходными позициями перехода. Т. е.:
Определение 1. Сеть Петри С является четверкой С = (P,T,I,O) где Р={p1} конечное множество позиций, n>=0.
T={t1} конечное множество переходов, m>=0.
Множества позиций и переходов не пересекаются.
I : T -> = P
Что является входной функцией - отображением из переходов в комплекты позиций.
O : T -> = P
Что выходная функция - отображение из переходов в комплекты позиций.
Мощность множества Р есть число n, а мощность множества Т есть число m. Произвольный элемент Р обозначается символом pi, i=1...n.
А произвольный элемент Т - символом tj, j=1...m.
Позиция pi является входной позицией перехода tj, в том случае, если pi I(tj);
Также pi является выходной позицией перехода, если pi O(tj).
Входы и выходы переходов представляют комплекты позиций. Кратность входной позиции для перехода tj есть число появлений позиции во входном комплекте перехода #(pi,I(tj)). Аналогично, кратность выходной позиции pi для перехода tj есть число появлений позиции в выходном комплекте перехода #(pi,O(tj)).
Определим, что переход tj является входом позиции pi, если pi есть выход tj (рис. 2). Переход tj есть выход позиции pi, если pi есть вход tj (рис. 1).
Определение 2. Определим расширенную входную функцию I и выходную функцию О таким образом, что:
1.3 Графы сетей Петри
Для иллюстрации понятий теории сетей Петри гораздо более удобно графическое представление сети Петри. Теоретико - графовым представлением сети Петри является двудольный ориентированный мультиграф. В соответствии с этим граф сети Петри обладает двумя типами узлов:
Ориентированные дуги соединяют позиции и переходы. Дуга направленная от позиции pi к переходу tj определяет позицию, которая является входом перехода tj. Кратные входы в переход указываются кратными дугами из входных позиций в переход. Выданая позиция указывается дугой от перехода к позиции. Кратные входы также представлены кратными дугами.
Определение 3. Граф G сети Петри есть двудольный ориентированный мультиграф G=(V,A) где V = {v1} - множество вершин.
А = {a1} - комплект направленных дуг.
ai={vjk}.
Множество V может быть разбито на 2 непересекающихся подмножества Р и Т, таких что:
И если ai = (vj,vk), тогда сеть Петри есть мультиграф, т. к., он допускает существование кратных дуг от одной вершины к другой. Т. к., дуги направлены, то это ориентированный мультиграф. Граф является двудольным, т.к. он допускает существование вершин двух типов: позиций и переходов.
1.4 Пример. Представление сети Петри в виде графа и в виде структуры сети Петри.
Пусть задана следующая структура сети Петри:
Для сети, изображенной на рис. 3 расширенными входной и выходной функциями являются:
Пример 2. Пусть задана следующая структура сети Петри: C = (P,T,I,O):
Заметим, что оба представления сети Петри - в виде структуры и в виде графа - эквивалентны. Их можно преобразовать друг в друга.
1.5 Маркировка сетей Петри
Маркировка есть присвоение фишек позициям сети Петри. Фишка - это одна из компонент сети Петри (подобно позициям и переходам). Фишки присваиваются позициям. Их количество при выполнении сети может изменяться. Фишки используются для отображения динамики системы. Маркированная сеть Петри есть совокупность структуры сети Петри C = (P,T,I,O) и маркировки и может быть записана в виде M = (P,T,I,O, ). На графе сети Петри фишки изображаются крупными точками в кружке, который представляет позицию сети Петри. Количество фишек (точек) для каждой позиции не ограничено и, следовательно, в целом для сети существует бесконечно много маркировок. Множество всех маркировок сети, имеющей n позиций, является множеством всех n векторов, т. е., Nn. Очевидно, что хотя это множество и бесконечно, но оно счетно. Когда маркировка превышает 4 или 5 фишек, то в кружках удобнее не рисовать фишки, а указывать их количество.
Маркировка =(12,22,8,10) - как вектор. Может оказаться, что структура остается неизменной, а маркировка иная, например вектор маркировки будет иметь вид = (13,22,9,10).
1.6 Правила выполнения сетей Петри
Выполнением сети Петри управляют количество и распределение фишек в сети. Сеть Петри выполняется посредством запусков переходов. Переход запускается удалением фишек из его входных позиций и образованием новых фишек, помещаемых в его выходные позиции.
Переход запускается, если он разрешен. Переход называется разрешенным, если каждая из его входных позиций имеет число фишек по крайней мере равное числу дуг из позиции в переход. Фишки во входной позиции, которые разрешают переход, называются его разрешающими фишками. Например, если позиции р1 и р2 служат входами для перехода t1, тогда t1 разрешен, если р1 и р2 имеют хотя бы по одной фишке. Для перехода t3 с входным комплектом {p3,p3,p3} позиция р3 должна иметь не менее 3 фишек для разрешения перехода t3 (рис. 6).
Определение 4. Переход tj, Т маркированной сети Петри С = (Р,T,I,O,) с маркировкой , разрешен, если для всех:
Переход запускается удалением разрешающих фишек, из всех его выходных позиций (количество удаленных фишек для каждой позиции соответствует числу дуг, идущих из этой позиции в переход), с последующим помещением фишек в каждую из его выходных позиций.
Переход:
- разрешен каждый раз, когда в р2 будет хотя бы одна фишка. Переход t3 запускается удалением одной фишки из позиции р2 и помещением одной фишки в позицию р3 и р4 (его выходы). Переход t4, в котором I(t4) = {p4} и O(t4) = {p5,p6,p6} запускается удалением по одной фишке из позиций р4 и р5, при этом одна фишка помещается в р5 и две в р6 (рис. 7).
Определение 5. Переход tj в маркированной сети Петри с маркировкой может быть запущен всякий раз, когда он разрешен. В результате запуска разрешенного перехода tj образуется новая маркировка ':
2. Сети Петри для моделирования систем: способы реализации
2.1 События и условия
Представление системы сетью Петри базируется на двух понятиях: событиях и условиях. Под событием понимается действие, имеющее место в системе. Появление события определяет состояние системы, которое может быть описано множеством условий. Условие - это предикат или логическое описание состояния системы. При этом условие может принимать либо значение "истина", либо значение "ложь".
Для того, чтобы событие произошло, необходимо выполнение соответствующих условий, которые называются предусловиями события. Возникновение события может привести к появлению постусловий.
В сети Петри условия моделируются позициями, события - переходами. При этом входы перехода являются предусловиями соответствующего события, выходы - постусловиями. Возникновение события равносильно запуску соответствующего перехода. Выполнение условия представляется фишкой (маркером) в позиции, соответствующей этому условию. Запуск перехода удаляет разрешающие маркеры, представляющие выполнение предусловий и образует новые маркеры, которые представляют выполнение постусловий.
Построение моделей систем в виде сетей Петри связано со следующими обстоятельствами:
1. Моделируемые процессы (явления) совершаются в системе, описываемой множеством событий и условий, которые эти события определяют, а также причинно - следственными отношениями, устанавливаемыми на множестве "события - условия".
2. Определяются события - действия, последовательность наступления которых управляется состоянием системы. Состояния системы задаются множеством условий. Условия формулируются в виде предикатов. Количественные условия характеризуются емкостью. Емкость условий выражается числами натурального ряда.
3. Условия (предикаты) могут быть выполнены или не выполнены. Только выполнение условий обеспечивает возможность наступления событий (предусловия).
4. После наступления события обеспечивается выполнение других условий, находящихся с предусловиями в причинно - следственной связи (постусловия). После того, как событие имело место, реализуются постусловия, которые в свою очередь являются предусловиями следующего события и т. д.
В качестве примера рассмотрим задачу моделирования работы автомата по производству какого либо изделия. Автомат находится в состоянии ожидания до появления заготовки, которую он обрабатывает и посылает в накопитель, т. е., событиями для такой системы являются:
1. заготовка поступила;
2. автомат начинает обработку;
3. автомат заканчивает обработку;
4. деталь посылается в накопитель.
Условиями для системы являются:
1. автомат ждет;
2. заготовка загружена;
3. автомат выполняет обработку;
4. деталь обработана.
В сети Петри условия моделируются позициями, а события - переходами.
При этом входы перехода являются предусловиями соответствующего события, а выходы - постусловиями.
Выполнение условия представляется фишкой (маркером) в позиции, соответствующей этому условию. Запуск перехода удаляет разрешающие фишки, представляющие выполнение предусловий и образуют новые маркеры, которые представляют выполнение постусловий. Сеть Петри рассматриваемого автомата имеет вид (рис. 8):
Аналогичный пример можно привести для вычислительной системы, которая обрабатывает задания, поступающие с устройства ввода и выводит результаты на устройство вывода. Задание поступает на устройство ввода. Когда процессор свободен и в устройстве ввода есть задание, процессор начинает обработку задания. Когда задание выполнено, оно посылается на устройство вывода, процессор либо продолжает обрабатывать другое задание, если оно есть, либо ждет прихода задания. Эта система может быть промоделирована сетью Петри, изображенной на рис. 9.
2.2 Одновременность и конфликт
Одной из особенностей сетей Петри и их моделей является параллелизм или одновременность. В модели сети Петри два разрешенных взаимодействующих события могут происходить независимо друг от друга, но при необходимости их легко синхронизировать. Т. о., сети Петри представляются идеальными для моделирования систем с распределенным управлением, в которых несколько процессов выполняются одновременно.
Другая важная особенность сетей Петри - их асинхронная природа. В сети Петри отсутствует измерение времени или течение времени. Структура сетей такова, что содержит в себе информацию для определения возможных последовательностей событий. В этих моделях нет никакой информации, связанной с количеством времени, необходимым для выполнения событий.
Выполнение сети Петри рассматривается как последовательность дискретных событий. Обычно запуск перехода рассматривается как мгновенное событие, занимающее нулевое время и одновременное возникновение двух событий невозможно. Моделируемое таким образом событие называется примитивным, примитивные события мгновенны и не одновременны.
Не примитивными называются события, длительность которых отлична от нуля. Однако это не приводит к возникновению проблем при моделировании систем. Не примитивное событие может быть представлено в виде двух примитивных: "начало не примитивного события", "конец не примитивного события" и условия когда «не примитивное» событие происходит".
В сетях Петри предложено представлять непримитивные события в виде прямоугольника (рис. 10), а примитивные события планками. Прямоугольник может иметь существенное значение при моделировании сложных систем на нескольких иерархических уровнях, т. к., он позволяет выделить в отдельный элемент сети целые подсети. Наличие прямоугольника в некотором смысле подобно понятию подпрограммы в блочном программировании и может оказаться в некоторых приложениях весьма полезным.
Если в какой либо момент времени разрешено более одного перехода, то любой из них может стать “следующим”.
Выбор запускаемого перехода осуществляется недетерминированным образом, то есть случайно и зависит от воли моделирующего систему. Не детерминированность и не одновременность запусков переходов в моделировании параллельной системы показывается двумя способами. Одна из них представлена на рисунке 11. В этой ситуации два разрешённых перехода tj и tk не влияют друг на друга. В число возможных последовательностей событий входит последовательность, в которой первым срабатывает один переход и последовательность в которой первым срабатывает другой переход. Эти два перехода могут быть запущены в любом порядке, это называется недетерминированностью и не одновременностью, переход tk (рис 12) может быть запущен в любом порядке, но обязательно при помощи маркеров в обеих позициях. Это называется одновременностью. Другая ситуация, в которой одновременное выполнение затруднено и которая характеризуется невозможностью одновременного запуска показана на рисунке 10.
Здесь переходы tj и tk находятся в конфликте, так как запуск одного из них удаляет маркёр из pi и тем самым завершает другой переход. Эта ситуация называется конфликтом и в моделируемых системах отображает борьбу за общие ресурсы. моделирование программный графический
Существуют определённые области, в которых сети Петри являются идеальным инструментом для моделирования: это области, в которых события происходят синхронно и независимо. Одной из таких областей является использование сетей Петри для моделирования аппаратного и программного обеспечения ЭВМ и других систем.
Размещено на Allbest.ru
Подобные документы
Понятие сетей Петри, их применение и возможности. Сетевое планирование, математические модели с использованием сетей Петри. Применение сетевых моделей для описания параллельных процессов. Моделирование процесса обучения с помощью вложенных сетей Петри.
курсовая работа [1,0 M], добавлен 17.11.2009Разработка и реализация графического редактора сетей Петри. Описание программы, которая позволяет создавать новые сети путем добавления позиций и переходов, соединяя их определенным образом. Основы построения систем автоматизационного проектирования.
курсовая работа [2,6 M], добавлен 21.06.2011Методы моделирования, отличные от инструментария "сети Петри". Пример моделирования стандартом IDEF0 процесса получения запроса браузером. Раскрашенные (цветные) сети Петри. Моделирование процессов игры стандартными средствами сетей Петри, ее программа.
курсовая работа [1,6 M], добавлен 11.12.2012Исследование методов моделирования, отличных от сетей Петри. Моделирование при помощи инструментария IDEF. Пример простейшей байесовской сети доверия. Анализ младшего разряда множителя. Сложение на сумматорах. Заполнение и анализ редактора сетей Петри.
курсовая работа [2,6 M], добавлен 28.10.2013Анализ существующих решений системы поддержки принятия решений для корпоративной сети. Многоагентная система. Разработка концептуальной модели. Структура базы знаний. Разработка модели многоагентной системы на базе сетей Петри. Методика тестирования.
дипломная работа [5,1 M], добавлен 19.01.2017Методы разработки вычислительной структуры. Изучение методов использования иерархических сетей Петри, пути их практического применения при проектировании и анализе систем. Анализ полученной модели на активность, обратимость, конечность функционирования.
лабораторная работа [36,8 K], добавлен 03.12.2009Построение математической модели программы, одноленточного автомата над алфавитом, допускающего различные множества слов. Алфавит терминальных символов, множество состояний и переходов. Определение начального и конечного состояний. Понятие сети Петри.
контрольная работа [294,8 K], добавлен 17.09.2013Классификация компьютерных сетей. Взаимодействие компьютеров в сети. Сетевые модели и архитектуры. Мосты и коммутаторы, сетевые протоколы. Правила назначения IP-адресов сетей и узлов. Сетевые службы, клиенты, серверы, ресурсы. Способы доступа в Интернет.
курсовая работа [1,5 M], добавлен 11.05.2014Анализ инцидентов информационной безопасности. Структура и классификация систем обнаружения вторжений. Разработка и описание сетей Петри, моделирующих СОВ. Расчет времени реакции на атакующее воздействие. Верификация динамической модели обнаружения атак.
дипломная работа [885,3 K], добавлен 17.07.2016Специфика построения и минимизации детерминированного автомата методом разбиения. Построение детерминированной сети Петри, моделирующей работу распознающего автомата. Особенности программной реализации праволинейной грамматики, построение ее графа.
курсовая работа [615,1 K], добавлен 19.06.2012