Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Математические основы теории систем / Лекции / Павлова А.В. Математические основа теории систем. Лекции Часть 1.pdf
Скачиваний:
159
Добавлен:
02.06.2015
Размер:
10.66 Mб
Скачать

Применяя описанный выше метод, найдем путь из источниках0 в сток x4 минимальной стоимости. Это будет путь x0 x2 у2 x4, или путь от изготовителя х2 к потребителю у2. По этому пути можно пропустить частичный поток, равный 10 единицам, стоимость перевозки по этому пути также равна10. Данные этого шага и пяти последующих занесены в табл. 3.8.

 

 

 

 

Таблица 3.8

Маршрут

Частичный

dij

 

Стоимость

пп

 

поток jk

 

 

перевозки

 

 

 

 

 

 

1

x2 у2

10

1

 

10

2

x3 у1

5

1

 

5

3

x1 у4

10

2

 

20

4

x3 у4

5

3

 

15

5

x3 у3

15

4

 

60

6

x2 у3

5

6

 

30

Итого

 

50

 

 

140

3.3.2. Транспортная задача по критерию вре-

мени. При решении транспортной задачи по критерию времени ребрам се ставятся в соответствие величины tij, трактуемые как время, необходимое на перевозку груза из пункта хi в пункт xj.

Очевидно, что время, необходимое на перевозку всех грузов изx0 в хn, будет определяться путем, имеющим наибольшую продолжительность прохождения потока, так как перевозка грузов по остальным путям закончится раньше. Следовательно, время Т, необходимое на перевозку всех грузов, будет равно T = max tij .Для решения задачи нужно распределить весь поток j таким образом,

чтобы длительность наиболее продолжительного пути была бы минимальной.

ТЕМА 4. СЕТИ ПЕТРИ

4.1. Особенности сетей Петри и области их применения

Теория сетей Петри зародилась в 1962 году. В настоящее время сети Петри являются распространенной моделью, позволяющей описывать структуру и взаимодействие параллельно действующих объектов и процессов.

Можно отметить следующие достоинства аппарата сетей Петри:

1.Сети Петри позволяют моделировать асинхронность и недетерминизм параллельных, независимых событий, параллелизм конвейерного типа, конфликтные ситуации между процессами.

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

3.Сети Петри позволяют производить иерархическую детализацию программных и аппаратных подсистем модели, производить совместное отображение структуры управления и потоков данных.

Знание основ сетей Петри является обязательным для специалистов по системному анализу, вычислительным сетям и т. д.

50

4.2. Основные определения. Способы задания сетей Петри

Сеть Петри – это двудольный ориентированный мультиграф, все множество X вершин которого разбито на два класса так, что дуги соединяют вершины только из разных классов. Эти классы вершин образуются:

множеством позиций P ={p1, p2 ,..., pn},

которые обозначаются кружоч-

ками ;

 

множеством переходов T = {t1,t2 ,...,tm },

которые обозначаются планка-

ми —, при этом P È T = X , P IT = Æ .

 

Как и любой граф, сеть Петри может быть задана графическим, аналитическим и матричным способами.

На рис. 4.1 приведено графическое представление сети Петри, в которой

P = {p1, p2, p3, p4} и T = {t1, t2, t3, t4}.

Дуги могут идти только из позиции в переход или из перехода в позицию. Если кратность всех дуг равна1, то сети называются ординарными. Сети с кратными дугами называются обобщенными.

При моделировании отражаются два аспекта систем: события и условия. Возможность наступления событий обеспечивается выполнением определенных условий. Условиям соответствуют позиции сети Петри, а событиям, происходящим в системе, соответствуют переходы (см. рис. 4.2).

Для представления динамики функционирования позициям могут присваиваться фишки, которые изображаются точками внутри вершин-позиций.

Присвоение фишек позициям сети Петри называется маркировкой, или разметкой. Сети Петри функционируют, переходя от одной маркировки к другой.

Начальная маркировка сети обозначается вектором m0 = [m1,m2 ,...,mn ], со-

ставляющие mi = m( pi ) которого определяют для каждой позицииpi

количе-

ство фишек в этой позиции. Таким образом, составляющими вектора m являют-

ся неотрицательные целые числа.

 

 

 

 

При

аналитическом

способе

задания

сеть

Петри

задается

C = (P, T, F, H, m0 ), где, кроме

множеств

позиций Р и переходов Т, задаются

входная F и выходная Н функции. Через F (t j ) обозначается множество вход-

ных позиций, а через H (t j )

– множество выходных

позиций переходаt j ;

m0 – начальная маркировка сети.

Так, например, сеть, изображенная на рис. 4.1, может быть представлена как P ={ p1, p2 , p3, p4}, T ={t1,t2 ,t3,t4},

51

F (t1) ={ p1},

 

 

H (t1) ={ p2},

 

 

 

 

 

F (t2 ) ={ p3},

 

 

H (t2 ) ={ p1},

 

 

 

 

 

F (t3 ) ={p2},

 

 

H (t3 ) = {p4},

 

 

 

 

m0 = [1021].

F (t

4

) ={ p

3

, p

4

},

H (t

4

) ={ p

, p

2

, p

2

},

 

 

 

 

 

1

 

 

 

 

Здесь переход t4

отображен в комплект позиций. Комплект – это обобще-

ние понятия множества, в него могут быть включены многократно повторяющиеся элементы.

Матричная форма определения сети Петри эквивалентна аналитическому способу задания C = (P,T, D-, D+, m0 ). Здесь Dи D+ – матрицы входных и выходных инциденций соответственно размером m ´ n , где m – число переходов и n – число позиций.

Элемент

d

ij

-

матрицы D

равен кратности дуг,

входящих в i-й переход из

 

 

 

 

 

 

 

 

 

 

 

j-й позиции.

d

 

 

 

 

матрицы D+

равен кратности дуг, выходящих из i-ro перехода

Элемент

ij

+

 

 

 

 

 

 

 

 

 

 

 

в j-ю позицию.

 

 

 

 

 

 

 

 

 

 

 

p1 .

t2

 

 

 

..

p3

 

 

 

Задание помещается

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

во входную очередь

 

 

 

 

 

 

 

 

 

 

 

 

Задание ждет

t1

 

 

 

 

 

t

4

 

 

Задание

 

Процессор

 

 

 

 

 

 

 

 

 

обрабатывается

. свободен

 

 

 

 

 

 

 

 

 

 

p2

 

 

 

 

 

 

.

 

 

 

 

Задание ждет вывода

 

 

 

 

t

3

 

 

 

 

Вывод задания

 

 

 

 

 

 

. p4

 

 

 

 

Рис. 4.1

 

 

 

 

 

Рис. 4.2

Для рассматриваемой сети Петри

 

 

 

 

 

 

 

 

 

p1 p2 p3 p4

 

 

p1 p2 p3 p4

 

 

 

 

 

 

t1 é1 0 0 0ù

 

t1 é0 1 0 0ù

 

 

 

 

 

 

 

ê

ú

 

 

ê

ú

 

 

 

D- = t2 ê0 0 1 0ú

,

D+ = t2 ê1 0 0 0ú .

 

 

 

 

 

 

t

ê0 1 0 0ú

 

t

ê0 0 0 1ú

 

 

 

 

 

 

3

ê

ú

 

3

ê

ú

 

 

 

 

 

 

t4 ë0 0 1 1û

 

t4 ë1 2 0 0û

52

 

 

 

 

 

 

 

 

 

 

 

 

Матрица D = D+Dназывается матрицей инцидентности сети Петри,

 

 

p1

p2

p3

p4

 

 

t1

é-1

1

0

0

ù

 

 

ê

 

 

 

 

ú

 

D = t2 ê

1

0

-1 0

ú

,

t

ê 0

-1

0

1

ú

 

3

ê

1

2

-1

 

ú

 

t4

ë

-1û

 

в которой входящие в переход ti дуги помеченные знаком «–».

4.3. Функционирование сетей Петри

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

пределение фишек между позициями, и маркировка сети изменяется. Сеть Петри функционирует, переходя от одной маркировки к другой.

Необходимое условие срабатывания переходаti: каждая из его входных позиций должна иметь не меньше фишек, чем число дуг из этой позиции в переход, т. е. "Pj Î F (ti ) : m( p j ) ³1. Переход ti, для которого выполняется данное

условие, называется разрешенным.

В результате срабатывания перехода ti из всякой входной позиции pj перехода ti удаляется столько фишек, сколько дуг ведет из pj в ti, а в каждую выходную позицию pk помещается столько фишек, сколько дуг ведет из ti в pk.

При начальной маркировке μ = [1021] сети Петри на рис. 4.1 разрешен-

0

ными являются переходы t1, t2 и t4. Переход t3 не разрешен, так как входящая в него дуга из позиции р2 не подкреплена фишкой (μ2 = 0). Переходы t1, t2 и t4 могут сработать в любом порядке, возникающий порядок появления событий не однозначен. Разрешенные переходы не влияют друг на друга.

Срабатывание перехода t1 приводит к новой маркировке μ' = [0121], перехода t2 – к маркировке μ' = [2011], перехода t4 – к маркировке μ' = [2210].

Условие срабатывания перехода t1 в имеющейся маркировке μ записывает-

___

ся следующим образом: mT ³ eT [i] × D - , i = 1, m,

где eT[i] – вектор-строка, компоненты которого соответствуют переходам и все равны нулю, за исключением i-й, которая равна единице.

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

Проверим условие срабатывания перехода t4 при μ0 = [1021]:

53

 

é

0

0

0

ù

 

 

1

 

 

 

ê0

0 1

0ú

 

[1021] ³ [0001] ×

ê

 

 

 

ú

= [0011] .

ê0 1

0 0ú

 

ê

0 1 1

ú

 

 

ë0

û

 

Векторы сравниваются каждой из составляющих. Условие выполняется.

В результате срабатыванияti возникает новая маркировка

T = mT + eT [i] × D . При срабатывании перехода t получим вместо μ марки-

4 0

ровку μ'T

 

 

 

 

 

é- 1

1

0

0

ù

 

 

 

 

 

ê

1

0

- 1

0

ú

 

¢

T

=

 

ê

ú

m

 

[1021]

+ [0001] × ê

0

- 1

0

1

ú = [1021] + [12 - 1 - 1] = [2210].

 

 

 

 

 

 

 

 

ê

 

 

 

 

ú

 

 

 

 

 

ê

 

2

- 1

 

ú

 

 

 

 

 

ë 1

- 1û

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

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

Сети Петри предусматривают также конфликтные состояния, когда необходимо запретить одновременное развитие нескольких процессов. На рис. 4.3, в переходы t1 и t2 находятся в конфликте: запуск одного из них удаляет фишку из pi и тем самым запрещает другой.

Рис. 4.3

Вопрос о разрешении конфликта, при котором одновременно несколько переходов готовы использовать метки одной и той же позиции, должен решаться дополнительными средствами.

Реализация переходов осуществляется до тех пор, пока существует хотя бы один разрешенный переход.

54