УДК 004.94
DOI 10.21685/2072-3059-2017-1-6
Д. В. Пащенко, Д. А. Трокоз, Г. И. Советкина, Е. А. Николаева
МЕТОДИКА МНОГОКРИТЕРИАЛЬНОЙ ОЦЕНКИ АППАРАТА СЕТЕЙ ПЕТРИ1
Аннотация.
Актуальность и цели. Демонстрируется эффективность и актуальность применения аппарата сетей Петри (СП) при моделировании сложных вычислительных систем. В силу того, что существующие в рамках данной теории методы анализа не позволяют оценить объем ресурсов, необходимых для построения требуемой модели системы, выделяется проблема нехватки критериев ее оценки с точки зрения сложности построения. Целью работы является программная реализация такой оценки в рамках теории структур СП.
Материалы и методы. Рассматривается метод анализа произвольной сети Петри на основе трудоемкости ее построения и взаимосвязей внутренних блоков - подсетей. Благодаря тому, что структурный подход позволяет производить операцию декомпозиции исходной системы, рассматриваемая модель может быть разбита на подсети минимальной размерности, что позволит произвести ее количественную оценку - ранжирование. Для определения суммарной оценки входных и выходных данных системы будет произведен анализ головных и хвостовых позиций сети с учетом значений весов входных и выходных дуг этих позиций. Для того чтобы выявить меру затрат, необходимую на построение системы, считается число операций объединения переходов и позиций подсетей минимальной размерности в рамках исходной СП.
Результаты. Формальная реализация модулей оценочной методики с использованием алгебры множеств позволила сформулировать правила разбиения структуры СП на элементарные блоки. Приводится пример сравнительной оценки двух сетей Петри на основе предлагаемых критериев сложности, отображаются графики структур СП в различных системах координат. Представлены результаты работы исследования - график СП-структур в трехмерном пространстве, реализуемый описанными программными средствами.
Выводы. Продемонстрирована точность оценки СП структурного анализа по сравнению с неавтоматизированным визуальным. Данный подход может быть применен для сравнительной оценки вычислительных систем с точки зрения трудоемкости построения, объема входных и выходных данных.
Ключевые слова: сети Петри, структурный анализ, оценочные шкалы.
D. V. Pashchenko, D. A. Trokoz, G. I. Sovetkina, E. A. Nikolaeva
THE METHODOLOGY OF MULTICRITERIAL ASSESSMENT OF THE PETRI NETS' APPARATUS
Abstract.
Background. This article emphasizes the effectiveness and relevance of using the apparatus of Petri nets for modeling of complex computing systems. Due to the fact
1 Работа выполнена в рамках гранта РНФ на проведение фундаментальных научных исследований и поисковых научных исследований с привлечением молодых исследователей по теме «Анализ и синтез сетевых структур сложных систем на основе тензорных и трансформационных методов» (соглашение № 15-11-10010).
that the analysis methods existing in this theory do not allow estimating the resources, required to build the desired model of the system - there is a problem of criteria shortage for its evaluation in terms of the complexity of the construction.
Materials and methods. In the article we consider the method of analysis of a random Petri net based on the complexity of its building and relationships of internal units - subnets. The goal of this article is a software implementation of such an assessment within the theory of PN structures. Due to the fact, that the structural approach allows to perform the operation of decomposition of the original system, this model can be divided into subnets of minimal dimension, that will allow to make its quantitative assessment - ranking. To determine the total assessment of the input and output data of the system we perform the analysis of head and tail positions of the net taking into account the weights of the input and output arcs of these positions. In order to identify an extent of the cost required to build the system, we calculate the number of union operations of subnet transitions and positions. These subnets have the minimal dimension in the original PN.
Results. The formal implementation of assessment technique modules using algebra of sets has made is possible to formulate the rules of splitting the PN structure into elementary blocks. The example of a comparative assessment of two Petri nets based on the proposed complexity criteria is given; the plots of PN in different coordinate systems are displayed.
Conclusions. The article presents the results of the research - a plot of PN structures in three-dimensional space, implemented using the described software. It demonstrates the accuracy of PN assessment by structural analysis in comparison with a non-automated visual one. This approach can be applied for comparative assessment of computer systems in terms of complexity of their construction and sizes of input and output data.
Key words: Petri nets, structural analysis, evaluative scales.
Введение
Развитием современных информационных технологий давно определена эффективность применения математических абстракций с целью выявления свойств и поведенческих состояний сложных вычислительных систем. Инструментарием таких исследований могут являться теория графов [1, 2], конечных автоматов [3], а также аппарат сетей Петри. В статье будет рассмотрен аппарат сетей Петри, обладающий мощной формальной выразительностью при описании и моделировании вычислительных систем.
Кроме того, в работах [4, 5] показана эффективность применения теории СП в качестве инструмента, позволяющего отслеживать реакцию системы на проявление тех или иных причинно-следственных связей, которые находят широкое применение в модельном описании параллельных процессов, разделении критических ресурсов, поиске безопасности, сохраняемости, достижимости и живости системы. Выделяют несколько видов СП: временные, стохастические, ингибиторные, цветные, иерархические. Использование сети конкретного вида обусловливает функциональные возможности моделируемой системы. К примеру, ингибиторные сети [6, 7] находят применение в целях обеспечения защиты и безопасности информационной системы, иерархические [8] - при анализе сложных динамических систем, содержащих вложенные сети, стохастические [9] - при необходимости случайной продолжительности срабатывания переходов сети.
Известны три основных группы методов анализа свойств сетей Петри: основанные на построении дерева достижимых и дерева покрывающих мар-
кировок; матричные методы, использующие фундаментальное уравнение сети и инварианты; методы редукции [10]. Следует отметить, что редукция является вспомогательным средством исследования и представляет собой частный случай эквивалентных преобразований, уменьшающих размерность сети [10].
1. Постановка задачи
Упомянутые методы анализа не позволяют характеризовать систему с точки зрения трудоемкости и сложности ее построения.
Рассмотрим пример, приведенный на рис. 1.
Рис. 1. Произвольные сети Петри
Сети имеют одинаковое число переходов, однако сеть 1 имеет в составе 2 цикла, а сеть 2 на одну позицию больше. Нельзя однозначно определить, какая из них сложнее, а при неавтоматизированном анализе громоздких вычислительных систем это будет практически невозможно.
В целях решения задач оптимизации и верификации находит применение концепция структурного анализа системы, представляющая механизм выявления подсистем различного уровня, их отношений и связей. Применение операции декомпозиции к дискретной системе позволило бы разделить ее на некоторые функциональные части, которые впоследствии можно реорганизовать с целью повышения эффективности ее работы.
В рамках гранта РНФ на проведение фундаментальных научных исследований и поисковых научных исследований с привлечением молодых исследователей по теме «Анализ и синтез сетевых структур сложных систем на основе тензорных и трансформационных методов» была поставлена задача структурного анализа системы сетей Петри (СП) с использованием методики тензорных преобразований. Как известно, тензорное исчисление [11, 12] находит широкое применение в механике (теория упругости), электродинамике, теории относительности.
В ходе работы планируется найти множества альтернативных вариантов примитивной СП путем разбиения ее на простейшие элементы, таким образом, осуществляя преобразование модели из одной системы координат в другую с использованием тензорной методологии путем введения пространства, размерности, определения системы координат и способов их преобразования. Полученные в результате декомпозиции элементарные блоки предлагается подвергнуть операции объединения, не нарушив заранее известные правила исходной системы. В результате синтеза простейших структур получим пространство СП различной степени эквивалентности исходной. Для анализа полученных структур будет произведено внедрение оценочной системы аппарата сетей Петри, изложенной ниже, в целях отбора сети наименее сложной структуры.
Учитывая вышесказанное, планируется программными средствами осуществить построение графика, отображающего совокупность синтезированных СП в качестве точек в пространстве.
Программа будет представлять собой набор модулей, каждый из которых производит расчет показателя по конкретной шкале.
Модуль 1. Шкала количества простейших элементов. Входные данные. Сеть Петри Р, описываемая обобщенной матрицей. Расчет. Разобьем Р на множество элементарных сетей:
Элементарной сетью будем считать сеть с одной входной, одной выходной позициями и одним переходом (рис. 2).
Для этого сначала произведем декомпозицию сети на линейные базовые фрагменты (ЛБФ) - циклы и цепочечные последовательности переходов и позиций, и уже из них получим простейшие. Разбиение на линейные базовые фрагменты будем производить по следующим правилам:
1) выполним разделение переходов, которые имеют больше одной входной либо выходной позиции. На рис. 3,а представлена исходная сеть, на рис. 3,б - сеть с разделенными переходами ^ и
2) исключим из полученной сети циклы, если они есть, при необходимости разделив позиции и переходы, чтобы не нарушать имеющиеся связи. Элемент сети (переход или позицию) будем делить в случае, если в него входит либо из него выходит больше одного элемента (рис. 3,в).
3) вычленим линейные последовательности переходов, выполняя разделение позиций, если это необходимо, аналогично предыдущему шагу (рис. 3,г).
Для формализации процесса деления на простейшие блоки введем оператор Р), который возвращает множество простейших элементов сети Р.
2. Формальная реализация
E = {ei, еъ ..., ek }.
Рис. 2. Простейшая сеть Петри
Таким образом, значением по шкале будет являться мощность полученного множества:
МР) = У(Р)\.
Характеристика системы. Позволяет определить ранг системы.
Модуль 2. Шкала весов позиций.
Входные данные. Матрица инцидентности В сети, sl, 82 - веса головных и хвостовых позиций соответственно.
Расчет. Для нахождения суммы весов позиций воспользуемся формулой
¡т = + зк,
где К - число головных позиций; К2 - число хвостовых позиций. Значения К\, К2 определим по матрице инцидентности. Матрица инцидентности В имеет размерность т*п (где т - количество позиций, п - количество переходов) и представляет собой разность входной и выходной матриц:
В = В+ - В-.
Очевидно, что элемент у, 0 < 7 < т, 0 < у< п, матрицы В определяет отношение позиции и перехода следующим образом: у > 0 - если позиция принадлежит множеству входных позиций перехода, у < 0 - если позиция принадлежит множеству выходных позиций перехода, у = 0 - если пози-
ция не принадлежит ни одному из этих множеств либо принадлежит сразу двум множествам, образуя петлю. В рамках данного формализма не берем в расчет структуры СП, содержащие петли. Отсюда следует, что для нахождения хвостовых позиций СП необходимо произвести поиск такой строки матрицы, что для Уdj выполнялось условие dj > 0 . Аналогично для выявления
головных позиций структуры необходимо произвести поиск такой строки матрицы, что для Уdj выполнялось условие dj < 0.
Характеристика системы. Шкала позволяет произвести суммарную оценку входных и выходных данных, что представляет интерес с точки зрения исследования поведения системы в целом, и может быть применима к моделям типа «черный ящик».
Модуль 3. Шкала числа операций объединений переходов и позиций.
Входные данные. Сеть Петри Р, описываемая обобщенной матрицей.
Расчет. На этапе расчета в модуле 1 получим сумму количества разложений переходов и позиций, которая в данном случае будет аналогична сумме количества объединений переходов и позиций /3(Р).
Характеристика системы позволяет судить о сложности системы.
Оценка всех шкал в совокупности позволяет анализировать такие критерии, как:
1) сложность системы в целом: наиболее полная оценка сложности структуры синтезированной СП;
2) эффективность распараллеливания: отслеживание степени параллелизма процессов;
3) оценка размерности системы: ранжирование системы.
Для определения оптимального элемента дискретного множества полученных сетей необходимо отталкиваться от исходной модели системы и выполняемых ею задач. На данном этапе оптимальным элементом множества СП будем считать тот, который имеет наименьшую длину вектора:
Я = 7/12(Р) + /22(О + /32(Р) .
Исходя из имеющихся данных, пространство построения предполагается трехмерным, но существует перспектива работы с гиперпространствами. Результатом работы будет являться график, отображающий множество СП в качестве точек в пространстве, позволяющий выделить сети наиболее простой структуры, эквивалентные исходной сети.
3. Пример
Проведем сравнительный анализ сложности сетей Петри, представленных на рис. 1. Для этого рассчитаем для каждой из них значения по шкалам.
Шкала 1. На рис. 4 и 5 представлен процесс разбиения сетей на линейные базовые фрагменты.
Разобьем полученные элементы на элементарные блоки. Для первой сети получим множество Е = {е1, е2, ..., ек} простейших сетей Петри, каждую из которых опишем множеством позиций и переходов (табл. 1, 2).
Посчитаем мощность каждого из полученных множеств:
/¡(Л) = ИРО! =|Е1| = 7, /1(Р2) = |^(Р2)| = |Е2| = 7.
Р:: (} Рб \ Рис. 4. Сеть Петри 1. Разбиение на ЛБФ
Q*» CVÖp« О Р7
Рис. 5. Сеть Петри 2. Разбиение на ЛБФ
Таблица 1
Множество простейших сетей Е1 для сети Петри 1
СП в, Множество позиций Множество переходов
е\ {р'ь Р'21}
в2 {Р''21, Р'з} fe}
вз {Р''з, Р''1} {t3}
в4 {Р'22, Р'41} {t2l}
в5 {Р''41, Р'б} {t4l}
вб {Р''б, Р''22} Ш
в7 {Р42, Р5} {t42}
Таблица 2
Множество простейших сетей Е1 для сети Петри 1
СП в, Множество позиций Множество переходов
в1 (pii, p'n} (in)
в2 (pV p'4} fe}
вз {P''4, pi} (t4>
в4 (p22, p'5} fe}
в5 (p''5, p6l}
вб (pi2, p'3} (tl2)
в7 (p''3, p62} Ш
Из полученных расчетов следует, что для построения обеих сетей требуется одинаковое количество блоков.
Шкала 2./2(П) = s1 К1 + s2 К2. Коэффициенты 51 и s2 возьмем равными 1 для обеих сетей.
Найдем количество головных и хвостовых позиций сети Петри 1 по матрице инцидентности 01 (табл. 3):
К = 0, К2 = 1, да) = 1.
Таблица 3
Матрица инцидентности 0\
tl t2 t3 t4 t5
Pl 1 0 -1 0 0
P2 -1 1 0 0 -1
P3 0 -1 1 0 0
P4 0 -1 0 1 0
P5 0 0 0 -1 0
Рб 0 0 0 -1 1
Аналогичные расчеты произведем для матрицы инцидентности (табл. 4):
К1= 1, К2= 1, да) = 2.
Таблица 4
Матрица инцидентности
t1 t2 t3 t4 t5
P1 1 0 0 0 0
P2 -1 1 0 0 0
P3 -1 0 1 0 0
P4 0 -1 0 1 0
P5 0 -1 0 0 1
P6 0 0 -1 0 1
P7 0 0 0 -1 0
Из полученных значений следует вывод, что сеть Петри 2 по суммарному объему входных и выходных данных превосходит сеть Петри 1.
Шкала 3. Для расчета значения по шкале нужно знать, какое количество объединений позиций и переходов элементарных сетей необходимо произвести, чтобы получить исходную сеть Петри. Очевидно, что количество объединений идентично количеству расщеплений позиций и переходов. Найдем такие позиции и переходы для первой сети: Р\ = Р\ + Р'\, Р2 = Р21 + Р22, Р21 = Р21 + Р''21, Р22 = Р 22 + Р 22, Рз = Р'з + Р''з,
Р4= Р41 + Р42, Р41 = Р'41 + Р''41, Рб = Р'б + Р''б,
¿2 = ¿21 + t22, ¿4 = ¿41 + t42,
Получим /з(Р1) = 10.
Аналогичные уравнения построим для второй сети:
Р1 = Р11 + Р12, Р2 = Р21 + Р22, Р21 = Р'21 + Р''21, Рз = Р'з + Р''з, Р4= Р'4 + Р ''4, Р5 = Р5 + Р", Рб = Рб1 + Рб2, tl= ¿11 + ¿2 = ¿21 + ¿22. Получим /з(Р2) = 9.
Вывод: трудоемкость построения сети Петри 1 выше. В результате расчетов получили следующие значения:
fi f2 /3
Pi 7 1 10
P2 7 2 9
Ниже представлены оценки структур СП в различных системах координат. На рис. б,а а показана зависимость ранга структур от суммарных весов входных и выходных данных, на рис. б,б - зависимость ранга структур от числа операций объединения переходов и позиций простейших СП. Проанализировав графики сравнительных характеристик, можно сделать вывод о том, что система, описываемая СП 1, оперирует меньшим суммарным объемом входных и выходных данных, чем СП 2. А система, описываемая СП 2, требует меньшей трудоемкости для своего построения.
Для удобства визуального анализа структур объединим оси /1 и получим график сравнительных характеристик в трехмерном пространстве, представленный на рис. 7.
Данный график является результатом работы вышеописанной программы, которая выполняет подсчет значений по шкалам для каждой сети Петри и графически отображает полученные значения в качестве точек в трехмерном пространстве.
Рис. 6. СП в различных системах координат
Рис. 7. Отображение СП в трехмерном пространстве
Рассчитаем длину полученных векторов:
Щ\ = 12,2, \P2\ = 11,5;
P >следовательно, первая сеть сложнее, чем вторая, исходя из суммарной оценки по всем критериям сложности.
Заключение
Описана формализованная методика количественной оценки сложности
произвольной сети Петри.
В ходе дальнейших исследований планируется разработка алгоритма,
определяющего эффективность оценочной системы структур, а также степень
необходимости введения новых шкал.
Библиографический список
1. Kulagin, V. P. Tensor Methods of Designing Computer System Structures / V. P. Kulagin // Automatic Control and Computer Sciences. - New York, 1989. -P. 55-61.
2. Bollobas, B. Modern graph theory / B. Bollobas. - New York : Springer Science & Business Media, 1998. - P. 396.
3. Straubing, H. Finite automata, formal logic, and circuit complexity / H. Straubing. -Berlin : Springer Science & Business Media, 1994. - P. 237.
4. Agerwala, T. Special Feature: Putting Petri Nets to Work / T. Agerwala // Computer. - 1979. - Vol. 12 (12). - P. 85-94.
5. Agerwala, T. Comments on capabilities, limitations and "correctness" of Petri nets / T. Agerwala, M. Flynn // ACM SIGARCH Computer Architecture News. - 1973. -Vol. 2 (4). - P. 81-86.
6. Formal Transformation Inhibitory Safe Petri Nets into Equivalent not Inhibitory / D. Pashchenko, D. Trokoz, N. Konnov, M. Sinev // Procedia Computer Science. - 2015. -Vol. 49. - P. 99-103.
7. Zaitsev, D. A. Inhibitor Petri Net that Executes an Arbitrary Given Turing Machine / D. A. Zaitsev // Systems Research and Information Technologies, Kyiv. - 2012. - № 2. -P. 26-41.
8. Jensen, K. High-level Petri nets: theory and application / K. Jensen, G. Rozenberg. -New York : Springer Science & Business Media, 1987. - P. 724.
9. Таранцев, Е. К. Моделирование цветными сетями Петри процесса регистрации радиолокационной информации / Е. К. Таранцев // Известия высших учебных заведений. Поволжский регион. Технические науки. - 2011. - № 1 (17). -С. 70-78.
10. Zaitsev, D. A. Compositional analysis of Petri nets / D. A. Zaitsev // Cybernetics and Systems Analysis. - 2004. - Vol. 42 (1). - P. 126-136.
11. Hackbusch, W. Tensor spaces and numerical tensor calculus / W. Hackbusch. -New York : Springer Science & Business Media, 2012. - P. 525.
12. McConnell, A. J. Applications of tensor analysis / A. J. McConnell. - New York : Courier Corporation, 2014. - P. 315.
References
1. Kulagin V. P. Automatic Control and ComPuter Sciences. New York, 1989, pp. 55-61.
2. Bollobas B. Modern graPh theory. New York: Springer Science & Business Media, 1998, p. 396.
3. Straubing H. Finite automata, formal logic, and circuit comPlexity. Berlin: Springer Science & Business Media, 1994, p. 237.
4. Agerwala T. ComPuter. 1979, vol. 12 (12), pp. 85-94.
5. Agerwala T., Flynn M. ACM SIGARCH ComPuter Architecture News. 1973, vol. 2 (4), pp. 81-86.
6. Pashchenko D., Trokoz D., Konnov N., Sinev M. Procedia ComPuter Science. 2015, vol. 49, pp. 99-103.
7. Zaitsev D. A. Systems Research and Information Technologies. Kyiv, 2012, no. 2, pp. 26-41.
8. Jensen K., Rozenberg G. High-level Petri nets: theory and application. New York: Springer Science & Business Media, 1987, p. 724.
9. Tarantsev E. K. Izvestiya vysshikh uchebnykh zavedeniy. Povolzhskiy region. Tekhnich-eskie nauki [University proceedings. Volga region. Engineering sciences]. 2011, no. 1 (17), pp. 70-78.
10. Zaitsev D. A. Cybernetics and Systems Analysis. 2004, vol. 42 (1), pp. 126-136.
11. Hackbusch W. Tensor spaces and numerical tensor calculus. New York: Springer Science & Business Media, 2012, p. 525.
12. McConnell A. J. Applications of tensor analysis. New York: Courier Corporation, 2014, p. 315.
Пащенко Дмитрий Владимирович
доктор технических наук, профессор, заведующий кафедрой вычислительной техники, Пензенский государственный университет (Россия, г. Пенза, ул. Красная, 40)
E-mail: [email protected]
Трокоз Дмитрий Анатольевич
кандидат технических наук, доцент, кафедра вычислительной техники, Пензенский государственный университет (Россия, г. Пенза, ул. Красная, 40)
E-mail: [email protected]
Советкина Галина Ивановна
магистрант, Пензенский государственный университет (Россия, г. Пенза, ул. Красная, 40)
E-mail: [email protected]
Николаева Екатерина Андреевна магистрант, Пензенский государственный университет (Россия, г. Пенза, ул. Красная, 40)
E-mail: [email protected]
Pashchenko Dmitriy Vladimirovich Doctor of engineering sciences, professor, head of sub-department of computer engineering, Penza State University (40 Krasnaya street, Penza, Russia)
Trokoz Dmitriy Anatol'evich Candidate of engineering sciences, associate professor, sub-department of computer engineering, Penza State University (40 Krasnaya street, Penza, Russia)
Sovetkina Galina Ivanovna
Master's degree student, Penza State University (40 Krasnaya street, Penza, Russia)
Nikolaeva Ekaterina Andreevna Master's degree student, Penza State University (40 Krasnaya street, Penza, Russia)
УДК 004.94 Пащенко, Д. В.
Методика многокритериальной оценки аппарата сетей Петри /
Д. В. Пащенко, Д. А. Трокоз, Г. И. Советкина, Е. А. Николаева // Известия высших учебных заведений. Поволжский регион. Технические науки. - 2017. -№ 1 (41). - С. 7з-84. БОТ 10.21б85/2072-з059-2017-1-б