Научная статья на тему 'Динамическая редукция графов достижимости сетей Петри'

Динамическая редукция графов достижимости сетей Петри Текст научной статьи по специальности «Математика»

CC BY
906
97
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по математике, автор научной работы — Короткевич Андрей Геннадьевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Dynamic Reduction of Petri Net Reachability Graphs

An approach to Petri net analysis is considered, which allows reducing necessary amount of memory by removing from reachability sub-graph some nodes corresponding to the markings already investigated. Several variations of algorithm constructing reduced reachability spaces are proposed, and their applicability for solving various tasks of Petri net analysis is considered. The suggested approach is compatible with the known methods of optimal simulation of Petri nets.

Текст научной работы на тему «Динамическая редукция графов достижимости сетей Петри»

КОМПЬЮТЕРНАЯ ИНЖЕНЕРИЯ И _

ДИАГНОСТИКА 'w'

УДК 519.714.5

ДИНАМИЧЕСКАЯ РЕДУКЦИЯ ГРАФОВ ДОСТИЖИМОСТИ СЕТЕЙ ПЕТРИ1

КОРОТКЕВИЧ А.Г.____________________

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

Введение

Сети Петри [1,2] — это популярная модель параллельных дискретных систем, применяемая в автоматизированном проектировании цифровых устройств. Существуют различные методы анализа сетей Петри, но наиболее универсальным подходом, теоретически применимым ко всем разновидностям ограниченных сетей Петри, является исследование пространства состояний. Но этот подход в его классическом варианте неприменим к большим сетям. Поэтому большое значение имеют методы анализа, конструирующие сокращённое, однако достаточное для решения поставленных задач пространство состояний [3-5].

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

Необходимые определения

Сетью Петри называется тройка Е = (p, T, F), где р — конечное непустое множество мест, t — конечное непустое множество переходов, F с (р X T) 'U T *р) — отношение инцидентности. Маркировка сети M — это вектор, компонентами которого являются неотрицательные целые числа, соответствующие местам сети. Говорится, что эти числа задают количество фишек, находящихся в

1 Данная работа была поддержана грантом Технического Университета Зелёной Гуры

местах. Количество фишек в месте р при маркировке м обозначается как м(р). Место p называется входным (выходным) для перехода t, если (р, t) є F ((т р) є F ). Множества входных и выходных мест перехода t обозначаются как *t и t*, соответственно. Предполагается, что эти множества для любого перехода непусты. Аналогичные обозначения используются для мест (* р , р *) и множеств переходов или мест. Двудольный ориентированный граф, вершины которого соответствуют местам и переходам сети, а дуги задаются отношением ее инцидентности, называется графом сети. Переход возбуждён, если каждое его входное место содержит хотя бы одну фишку. Возбуждённый переход может сработать, что приводит к удалению одной фишки из каждого его входного места и добавлению одной фишки к каждому выходному месту. Считается, что переходы срабатывают мгновенно и строго по одному, а маркировка может изменяться только посредством срабатывания переходов. Часто выделяется начальная маркировка Mo . Последовательность срабатывания переходов называется разрешённой, если первый из них возбуждён в данной маркировке, и срабатывание каждого из них приводит к маркировке, в которой возбуждён следующий. Маркировка M называется непосредственно достижимой из M', если найдётся такой переход t є T , возбуждённый в M', что при его срабатывании получается маркировка M ; в этом случае пара (M', M) принадлежит отношению непосредственной достижимости, определённому на р . Маркировка M достижима из маркировки м', если существует разрешённая последовательность срабатывания переходов, ведущая из M' в M . Маркировка M покрывает маркировку M', если Ур є P : M(р) > M'(р) (обозначается M > M'). Множество маркировок, достижимых в сети 2 из маркировки M , называется множеством достижимости и обозначается Re, M). Ориентированный граф G(e, M0) называется графом достижимости сети 2, если его вершины взаимнооднозначно соответствуют элементам Re, M 0), а дуги — отношению непосредственной достижимости между ними.

Сеть Петри называется живой, если для любой маркировки, достижимой из Mo, и для любого перехода существует разрешённая последовательность срабатывания переходов, включающая его. Тупиком называется достижимая маркировка, в которой нет возбуждённых переходов [6]. Сеть Петри называется безопасной, если в любой достижимой маркировке ни одно место не содержит более одной фишки. Сеть называется ограниченной (n -ограниченной), если количество фишек в любом месте любой достижимой маркировки не превышает натурального числа n . Сеть называется консервативной, если её местам приписаны веса, и взвешенная сумма количества фишек в сети остаётся постоянной во всех достижимых маркировках. Сеть называется обратимой, если из любой достижимой маркировки достижима исходная. Задачи

76

РИ, 2002, № 1

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

“Упрямым множеством” (англ. stubborn set, [7]) сети Петри называется множество переходов Ts такое, что: 1) каждый невозбужденный переход в Ts имеет пустое входное место p такое, что все переходы, принадлежащие •р, принадлежат Ts ; 2) никакой возбужденный переход в Ts не имеет общих входных мест ни с одним переходом, не

принадлежащим Ts ; 3) Ts содержит возбуждённый переход. На данном понятии основан метод упрямого множества (stubborn set method, [7]) — наиболее известный метод анализа сетей Петри с помощью построения сокращённых графов достижимости.

Необходимые определения из теории графов можно найти в [8].

Динамическая редукция графа достижимости

Рассмотрим процесс анализа сети Петри путём построения графа достижимости (полного или сокращённого). Граф при этом только наращивается, добавленные в него вершины и дуги остаются там и до конца анализа занимают память. Но действительно ли необходимо помнить все исследованные маркировки? Очевидно, нет, если не требуется получение всего множества достижимости сети в явном виде. Например, если ищутся тупики, то нет необходимости помнить все нетупиковые маркировки после того, как получены непосредственно достижимые из них маркировки. Если необходимо проверить граф достижимости на сильную связность (анализируется обратимость), то, удалив вершину, соответствующую некоторой маркировке, и соединив дугами вершины, соответствующие маркировкам, непосредственно предшествующим данной и непосредственно из неё достижимой, не утратим информацию, необходимую для проверки интересующего нас свойства. И т.д.

Однако удалять все уже исследованные вершины нельзя по той очевидной причине, что тогда алгоритм построения сокращённого графа достижимости войдёт в бесконечный цикл. Рассмотрим следующий алгоритм (м\х\ означает маркировку, соответствующую вершине x):

Алгоритм 1

Пусть Е = (P, T, F) — сеть Петри, G(V, E) — строящийся граф. Изначально V = ы , v0 соответствует

Mo; E = 0 . Fr = V .

1. WHILE Fr *0 (x є Fr ), DO: IF в м[х| есть возбуждённые переходы, THEN:

1.1. Для всех переходов, возбуждённых в M\x\, получить новые маркировки; создать для них соответствующие вершины; добавить их в V и Fr .

1.2. Добавить в e дуги, ведущие от vо ко всем вершинам, соответствующим маркировкам, полученным на предыдущем шаге.

1.3. IF x ф vo , THEN V ■= V \ {x}, удалить из e все дуги, инцидентные x.

1.4. Fr ■= Fr \ x.

IF возбужденных переходов нет, THEN Fr := Fr \ {x}.

2. END.

Это модификация известного алгоритма построения графа достижимости сети Петри [1,12]. Легко видеть, что для сетей, граф которых не содержит циклов, алгоритм приведет к получению графа, вершины которого будут соответствовать начальной и всем тупиковым маркировкам. Однако нетрудно подать пример сети, с которой этот алгоритм войдёт в бесконечный цикл (рис. 1).

Рис. 1. Сеть Петри, для которой Алгоритм 1 зацикливается

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

Таким образом, приведенный алгоритм необходимо модифицировать, т.е. сохранять в сокращённом графе достижимости некоторые вершины во избежание зацикливания. Нужно разорвать циклы в графе достижимости, а для этого, как следует из леммы 2, достаточно разорвать циклы в графе сети. Разорвать в том смысле, что для каждого цикла в графе сети будет сохраняться по крайней мере одна соответствующая вершина в графе достижимости.

Рассмотрим следующую модификацию алгоритма.

Алгоритм 2

Пусть Е = (P, T, F) - сеть Петри, G(V, E) — строящийся граф. Изначально V = ы , v0 соответствует

Mo; E = 0 . Fr = V ; D = 0 .

1. Найти в графе сети такое множество Qпереходов, что каждый цикл в этом графе проходит через хотя бы один переход, принадлежащий Q .

2. WHILE Fr Ф® (x є Fr ), DO: IF в M[x\ есть возбуждённые переходы, THEN:

2.1. Для всех переходов, возбуждённых в M\x\, получить новые маркировки, в которые сеть перейдет при их срабатывании. Создать для них соответствующие вершины, если V не содержит таких вершин; добавить их в V и Fr ; добавить в e дуги, ведущие от x к этим вершинам. IF новая маркировка получена срабатыванием перехода t є Q , THEN добавить соответствующую вершину в d .

2.2. IF x g D , THEN:

РИ, 2002, № 1

77

2.2.1. Для каждой пары дуг (а, x) и (x, b):

E := (Eи{(а,b)}) \{(а,х),(х,b)} .

2.2.2. V := V \ X.

2.3. Fr := Fr \ X .

ELSE

Fr := Fr \ X .

3. END.

Легко видеть, что данный алгоритм заканчивает работу для любой ограниченной сети Петри. Из графа, построенного с помощью Алгоритма 2, можно извлечь много полезной информации. В [8] показано, что Алгоритм 2 позволяет найти все тупики сети, если она таковые имеет. Ниже будет рассмотрена применимость данного алгоритма и его модификаций для решения других задач анализа сетей Петри.

Предварительно, однако, остановимся на п.1 Алгоритма 2. Его выполнение может оказаться нетривиальной задачей, особенно если стремиться минимизировать мощность множества Q . Данная задача может рассматриваться как вариант задачи дециклизации ориентированного графа [9]. Известны некоторые методы, решающие эту задачу, но они неэффективны для больших графов. Поэтому нам пришлось разработать эвристический алгоритм, описанный ниже.

Алгоритм 3

Дециклизация ориентированного графа

Пусть дан граф G = (V, E). G = (V', E'), V' = V,

E' =0.S = 0.

1. WHILE 3v є V : (id(v) = 0 v od(v) - 0) DO

1.1. E := E \ {e є E: v є e}.

2. Подсчитать для каждой дуги e є E вес по формуле:

w(e) = id (init(e)) - od (init (e)) + od (ter (e)) - id (ter (e)) .

3. WHILE (E \ S *0)

3.1. e := min(w(e): e є (E \ S));

3.2. S := S u {e};

3.3. E ':= E 0{e};

3.4. IF G’содержит цикл, THEN E':= E\{e} .

4. (e \ E') — множество дуг, удаление которых разрывает все циклы в G . END.

Подробное описание и обоснование Алгоритма 3 приведено в [10]. Для целей, преследуемых в данной статье, достаточно применить его к графу сети Петри и определить множество переходов, искомое в п. 1 Алгоритма 2, следующим образом:

Q = {t є T |((t, x) є f) л

л ((t, x) є (E \ E')) v ((t, x) є F) л ((t, x) є (E \ E'))} . Теперь Алгоритм 2 завершён.

Решение задач анализа с помощью описанного подхода

Рассмотрим вопрос о том, какую информацию можно извлечь из сокращённого графа достижимости, т.е. какие из основных задач анализа сетей Петри можно решать таким образом.

Живость. Проверка живости сети посредством анализа графа достижимости сводится к проверке наличия тупиков (см. [8]), а также того, содержит ли каждая сильно связная составляющая графа дуги, соответствующие всем переходам сети. Очевидно, что Алгоритма 2, как он представлен выше, для этого недостаточно, потому что получаемый в результате граф не содержит информации о переходах, соответствующих дугам. Модифицируем его, чтобы устранить этот недостаток.

Алгоритм 2’

Пусть Е = (P, T, F) - сеть Петри, G(V, E) - строящийся граф. Изначально V = ы , v0 соответствует

Mo; E = 0 . Fr = V ; D = 0 .

1. Найти в графе сети такое множество Q переходов, что каждый цикл в этом графе проходит через хотя бы один переход, принадлежащий Q .

2. WHILE Fr *0 (xє Fr ), DO: IF в M[x] есть возбуждённые переходы, THEN:

2.1. Для всех переходов, возбуждённых в M\x\, получить новые маркировки, в которые сеть перейдет при их срабатывании. Создать для них соответствующие вершины, если V не содержит таких вершин; добавить их в V и Fr ; добавить в E дуги, ведущие от x к этим вершинам. Каждой новой дуге поставить в соответствие множество, состоящее из одного элемента — соответствующего перехода. IF новая маркировка получена срабатыванием перехода t є Q , THEN добавить соответствующую вершину в D .

2.2. IF x g D , THEN:

2.2.1. Для каждой пары дуг (a, x) и (x,b):

E := (Eu{(a,b)})\{(a,x),(x,b)} .

2.2.2. Множество переходов, соответствующее вновь введённой дуге, получается путём объединения множеств, соответствующих дугам, которые она замещает.

2.2.3. V := V\ x.

2.3. Fr := Fr \ x .

ELSE

Fr := Fr \ {x}.

3. END.

Примем, что сеть является ограниченной (проверку ограниченности рассмотрим ниже). Легко видеть, что каждому сильно связному компоненту полного графа достижимости сети будет соответствовать сильно связный подграф графа, сгенерированного описанным алгоритмом; а объединение множеств

78

РИ, 2002, № 1

переходов, соответствующих дугам этого подграфа, будет совпадать с множеством переходов, соответствующих дугам сильно связного компонента полного графа достижимости. Таким образом, с помощью Алгоритма 2' можно анализировать живость сети.

Безопасность и ограниченность

Чтобы убедиться, что описанный подход позволяет проверять ограниченность сети, нам понадобится следующее утверждение.

Лемма 1. Пусть последовательность срабатывания переходов а переводит сеть из маркировки м в M', M' > M . Тогда в графе сети существует цикл, такой, что все переходы, через которые он проходит, принадлежат и .

Доказательство аналогично доказательству леммы 3 (см. Приложение).

Проверить ограниченность сети при построении графа достижимости можно, проверяя, не существует ли на графе путь, соединяющий вершины v и v такие, что м\у'\>M[v|. Пусть этому пути соответствует последовательность срабатывания переходов и . Из леммы 2 и описания Алгоритма 2 следует, что по крайней мере одна из вершин на пути из v в v (пусть это будет vi) останется в графе, построенном Алгоритмом 2. Последовательность s разрешена в м\у'\, и её срабатывание переведёт м\у'\ в м\у''] (Щу''] > м\у'\). Аналогично рассуждая, приходим к выводу, что на пути от у к у' существует вершина vj', которая останется в графе, построенном Алгоритмом 2, и м[vj'] > м[vj ] . Следовательно, анализ графа, построенного Алгоритмом 2, позволяет проверить ограниченность сети. Чтобы алгоритм не зацикливался в случае неограниченной сети, его придётся модифицировать.

Алгоритм 2’’

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

Пусть Е = (Р, T, F) — сеть Петри, G(V, E) — строящийся граф. Изначально V = ы , v0 соответствует

мо; E = 0 . Fr = V ; D = 0 .

1. Найти в графе сети такое множество Q переходов, что каждый цикл в этом графе проходит через хотя бы один переход, принадлежащий Q .

2. WHILE Fr *0 (х є Fr ), DO: IF в м[х| есть возбуждённые переходы, THEN:

2.1. Для всех переходов, возбуждённых в м\х\, получить новые маркировки, в которые сеть перейдет при их срабатывании (если м^) = а , для каждой достижимой из м маркировки м' считаем, что м' (s) = а ). Создать для них соответствующие вершины, если V не содержит таких вершин; добавить их в V и Fr ; добавить в E дуги, ведущие от х к этим вершинам. Каждой новой дуте поставить в соответствие множество, состоящее из одного элемента—соответствующего перехода. IF новая маркировка получена срабатыванием перехода t є Q, THEN добавить соответствующую вершину в d .

2.2. IF существует путь вдоль дуг графа, ведущий от вершины v к новой вершине v', и мИ>м[г|, THEN считаем, что для любого места s такого, что мИs) > м№), мИs) = ю (бесконечно большая величина).

2.3. IF х г D , THEN:

2.3.1. Для каждой пары дуг {а, х) и (х,Ь) :

E := (E и {(а, Ь)}) \{(а, х),(х, Ь)} .

2.3.2. Множество переходов, соответствующее вновь введённой дуге, получается путём объединения множеств, соответствующих дугам, которые она замещает.

2.3.3. V := V \ х.

2.4. Fr := Fr \ {х}.

ELSE

Fr := Fr \ {х}.

3. END.

Что касается проверки безопасности, она может быть осуществлена обычным образом — сеть безопасна, если в процессе выполнения алгоритма не встретилась ни одна маркировка м такая, что 3s: м(s) > 1.

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

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

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

Сочетаемость описанного подхода с известными методами построения RRG

Описанный метод может быть эффективно скомбинирован с такими методами, как метод упрямого множества [7] и максимальное параллельное моделирование (maximal concurrent simulation [4]). В [8] показано, как данный подход сочетается с методом упрямого множества на примере задачи поиска тупиков в сети. Для такой комбинации необходимо скорректировать пункт 2.1 Алгоритма 2 с тем, чтобы в нём генерировались не все маркировки, непосредственно достижимые из данной, а только те, которые нужны для построения RRG.

РИ, 2002, № 1

79

Рассмотрим сеть, показанную на рис. 2.

Полный граф достижимости этой сети показан на рис. 3, RRG, полученный с помощью метода упрямого множества, — на рис. 4, окончательный вид графа, полученного с помощью Алгоритма 2, — на рис. 5.

Как видно, сеть имеет тупики, и с 1 >

каждый из мето- t1

дов позволяет их обнаружить, но с различными затра- Г

с 2,5 >

тами времени и памяти. Оконча- t2 т

тельный вид графа, полученного С 3,5 >

Алгоритмом 2, не

отличается от графа, полученного с t3 1 г

помощью его модификации, в ко- С 4,5 >

торой для каждой рассматриваемой t4

маркировки генерируются не все непосредственно достижимые из неё, а только полу- t5

чаемые срабатыванием переходов, — принадлежащих (. одному из упрямых множеств.

Однако в процессе построения графа в том и другом слу- Рис. 4. RRG для сети с рис. 1, чае имеется суще- полученный с помощью

ственная разница: stubborn set method

в первом случае

граф максимального размера в процессе построения имеет 6 вершин (рис.6), а во втором — совпадает с окончательным видом графа и имеет 3 вершины (рис. 5).

Dead markings!

оо

t6

4,7

оо

80

РИ, 2002, № 1

Оценка сложности

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

Пусть G — граф достижимости, G' — граф для той же сети, полученный с помощью Алгоритма 2, V' с V по построению. Оценим отношение между

V и V1 ■

В худшем случае каждый переход сети Петри принадлежит хотя бы одному циклу графа сети. Обычно эти циклы пересекаются, почему и необходим Алгоритм 3. В этом случае Q| < п , где п — количество циклов в графе сети (все циклы в ориентированном графе можно найти с помощью алгоритма, описанного в [11]). Предположим, однако, что циклы не пересекаются (Q = п). Худшим случаем по существу оказывается несвязная сеть, состоящая из нескольких отдельных циклов. Пусть т — средняя длина (в переходах) цикла в графе сети. Тогда VI ~ тп. Как оценить размер |V'| ?

Вероятность того, что данная вершина не будет

сохранена в графе, равна

т -1 т

п

. Отсюда V1

оказывается меньше V на

т -1

= (т -1п

п

т

вершин, т.е. -М-

V 'I

1

1 -11— т

п

Такова достигаемая экономия памяти. Простые расчёты показывают, что она зависит прежде всего

от отношения гуп . Если т = п , экономия получается примерно в полтора раза. Если 2т = п , экономия не оказывается сколько-нибудь значительной. А если т = 2п , экономия выходит почти в 2,5 раза.

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

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

Кроме того, важно отметить, что экономия памяти достигается здесь вследствие дополнительных затрат времени, которые могут оказаться значительными. Это связано с тем фактом, что обычные алгоритмы построения графов достижимости обрабатывают каждую маркировку не более одного раза, а Алгоритм 2 может это делать многократно. Точная оценка дополнительных затрат времени представляет собой сложную комбинаторную задачу; можно сказать, однако, что эти затраты зависят

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

количества граничных маркировок (|Е>| в описании Алгоритмов 1 и 2). Различные дисциплины этого моделирования предоставляют дополнительные возможности по варьированию затрат памяти и времени на анализ: поиск в глубину обеспечивает максимальную экономию памяти и минимальную — времени, тогда как поиск в ширину позволяет минимизировать затраты времени на многократную обработку одних и тех же маркировок.

Заключение

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

Приложение: зависимость между циклами графа сети Петри и ее графа достижимости

Лемма 2. Если граф сети Петри не имеет циклов, то сеть не имеет взаимно достижимых маркировок.

Доказательство. Упорядочим все места сети в соответствии с направлением дуг в её графе. Каждое срабатывание перехода будет перемещать фишки между местами в соответствии с этим порядком. Поэтому никакая маркировка такой сети не может быть достижима из себя.

Лемма 3. Каждому циклу графа достижимости соответствует цикл графа сети Петри такой, что каждому из лежащих на нём переходов соответствует дуга, принадлежащая циклу графа достижимости.

Доказательство. Пусть а — последовательность срабатывания переходов, соответствующая циклу на графе достижимости сети. Предположим, что переходы, принадлежащие циклу графа достижимости, не образуют циклов на графе сети. Тогда места сети можно упорядочить так, что для каждого перехода t ест его входные места будут левее выходных. Таким образом, согласно определениям, которыми мы пользуемся,

Vt: t (t* ^0]), 3se* t, t ea: Vt'eas g t'*.

После выполнения последовательности а количество фишек в s уменьшится. Противоречие.

Лемма 4. Пусть а — последовательность срабатывания переходов, соответствующая циклу на графе достижимости сети. Тогда каждый переход, принадлежащий а , лежит на некотором цикле в графе сети, и все прочие переходы, через которые проходит этот цикл, принадлежат а .

РИ, 2002, № 1

81

Доказательство. Допустив, что некоторые переходы, принадлежащие а , не лежат на таких циклах, и повторив для них рассуждение из доказательства леммы 3, придём к утверждению леммы 4.

Таким образом, совокупность переходов, соответствующих циклу на графе достижимости, образует на графе сети один или несколько циклов, причём любой переход, соответствующий дуге цикла графа достижимости, лежит на одном из этих циклов на графе сети.

Литература: 1. PetersonJ.L. Petri net theory and the modeling of systems. Prentice-Hall, Inc. Englewood Cliffs, 1981. 2. MurataT. Petri Nets: Properties, Analysis and Applications // Proceedings of the IEEE, Vol.77, No.4, April 1989. P.541-580. 3. HeinerM. Petri net based system analysis without state explosion // High Performance Computing ’98, Boston April 1998. P. 1-10. 4. JanickiR, KoutnyM. Optimal simulation, nets and reachability graphs. Tech. Rep. No. 01-09, McMaster Univ., Hamilton, 1991. 5. KaratkevichA. Optimal Simulation of a-Nets // Proceedings of the Polish-German Symposium on SRE’2000, Zielona Оуга, 2000. P. 217-222. 6. DavidR., AllaH. Petri Nets & Grafcet. Tools for modelling discrete event systems. New York: Prentice Hall, 1992. 339 p. 7 Valmari A. State of Art

Report: STUBBORN SETS // Petri Nets Newsletter, No 46, GI, Bonn 1994. P. 6-14. 8. Karatkevich A., Adamski M. Deadlock Analysis of Petri Nets: Minimization of Memory Amount // Proceedings of the 3rd ECS Conference, Bratislava, 2001. P. 69-72. 9. DeoN. Graph Theory with Applications to Engineering and Computer Science. Prentice-Hall, Inc., Englewood Cliffs, New Jersey, USA, 1974. 10. KaratkevichA. On Algorithms forDecyclisation of Oriented Graphs // Proceedings of the International Workshop DESDes’01, Zielona Gуra, 2001. P. 35-40. 11. Mateti, DeoN. On algorithms for enumerating all circuits of a graph, SIAM J. Comput., Vol. 5, No. 1, March 1976. 12 Закревский А.Д. Параллельные алгоритмы логического управления. Минск: Институт технической кибернетики НАН Беларуси, 1999. 202 с.

Поступила в редколлегию 21.11.2001

Рецензент: д-р техн. наук, проф. Хаханов В.И.

Короткевич Андрей Геннадьевич, канд. техн. наук, адъюнкт Зеленогурского Университета, Польша. Научные интересы: приложения сетей Петри в логическом управлении, анализ сетей Петри, комбинаторные задачи в логическом проектировании. Адрес: Dept. of Computer Eng. and Electronics, University of Zielona Gora, ul. Podgorna 50, 65-246 Zielona Gora, Poland. E-mail: A.Karatkevich@iie.pz.zgora.pl. Тел.: (+48 68) 3282 526.

УДК 621.327

ИЕРАРХИЧЕСКИ -

ПОСЛЕДОВАТЕЛЬНАЯ

ОРГАНИЗАЦИЯ

ВОССТАНОВЛЕНИЯ

ИЗОБРАЖЕНИЙ

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

БАРАННИКВ.В, КОРОЛЁВА Н.А.________

Pассматриваются различные подходы к организации восстановления массивов длин серий. Для сокращения количества обращений к внешнему запоминающему устройству предлагается комбинированная организация процесса восстановления.

Введение

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

— достоверность получения видеоинформации;

— быстрота восстановления.

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

1. Общая схема восстановления изображений

Весь процесс восстановления изображений по полиадическим кодам длин серий можно разбить на четыре этапа:

— восстановление служебной информации;

—декодирование комбинированных полиадических кодов;

— восстановление диапазонов длин серий;

— восстановление исходных элементов изображений.

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

— декодирование одного обобщенного (Тмк — время декодирования одного обобщенного кода, WMK = М — объем памяти, необходимой для хранения одного обобщенного кода, этап 2) или одного простого (Ткс — время декодирования одного полиадического кода, сформированного для отдельного столбца массива длин серий, WKC = М — объем памяти, требуемый для хранения одного кода, этап 2) полиадического кода;

— восстановление динамического диапазона для одного столбца длин серий (Тдд — время восстановления динамического диапазона для одного столбца массива длин серий, WOT = mдсМ — объем памяти, затрачиваемый на представление столбца массива длин серий, этап 3);

82

P^ 2002, № 1

i Надоели баннеры? Вы всегда можете отключить рекламу.