УДК 004.415
АЛГОРИТМ СИНТЕЗА АЛЬТЕРНАТИВНЫХ СЕТЕЙ ПЕТРИ ДЛЯ АНАЛИТИЧЕСКОГО ПРОГРАММНОГО СРЕДСТВА ИССЛЕДОВАНИЯ СП-МОДЕЛЕЙ С ИСПОЛЬЗОВАНИЕМ ТЕНЗОРНОЙ МЕТОДОЛОГИИ1
Д. В. Пащенко, Г. В. Мартяшин, К. С. Максимова, Е. А. Бальзанникова, К. Ю. Тархов
SYNTHESIS ALGORITHM OF THE PETRI ALTERNATIVE
NETWORKS FOR THE ANALYTICAL SOFTWARE OF RESEARCH OF MODELS OF THE PETRI NETWORKS WITH USE OF TENSOR METHODOLOGY
D. V. Pashchenko, G. V. Martyashin, С. S. Maximova, E. A. Balzannikova, K. Yu. Tarhov
Аннотация. Актуальность и цели. Проектирование параллельных вычислительных систем является актуальной в настоящее время задачей. Использование тензорной методологии исследования СП-структур предоставляет возможность свести к минимуму избыточность разработанной СП-структуры в процессе проектирования таких систем. Однако это требует дополнительных исследований и доработки существующих алгоритмов, из чего вытекает необходимость разработки аналитического программного средства, позволяющего выполнять исследование СП-структур с применением тензорной методологии. Целью данной работы является рассмотрение различных аспектов возможной реализации подобной системы, в особенности синтеза альтернативных СП-структур. Материалы и методы. Поставленная задача была достигнута за счет использования теории графов для разработки алгоритма синтеза альтернативных СП-структур и организованного особым образом счетчика для его программной реализации. Результаты. В работе подробно описан этап синтеза альтернативных СП-структур в тензорной методологии исследования СП-структур, сформулированы цели и задачи данного этапа, а также предложены новые алгоритмы генерации программ синтеза и порядок синтеза альтернативных сетей Петри. Выводы. В результате проведенного исследования была разработана система, которая может быть применима для анализа малых СП-структур, а также определены направления дальнейших исследований с целью обеспечения возможности применения данной системы для СП-структур большей размерности.
Ключевые слова: сети Петри, тензор, тензорная методология.
Abstract. Background. Design of parallel computing systems is a task actual now. Use of tensor methodology of research of the joint venture structures gives an opportunity to minimize redundancy developed by the joint venture structure in process design of such systems. However, it demands additional researches and completion of the existing algorithms what need of development of the analytical software allowing to carry out research of the joint venture structures with application of tensor methodology follows from. The purpose of this work is consideration of various aspects of possible realization of similar
1 Эта работа выполнена в рамках гранта РНФ на проведение фундаментальных научных исследований и поисковых научных исследований с привлечением молодых исследователей по теме «Анализ и синтез сетевых структур сложных систем на основе тензорных и трансформационных методов» (соглашение № 15-11-10010).
system, in particular synthesis of the alternative joint ventures structures. Materials and methods. The objective has been reached due to use of the theory of counts for development of a synthesis algorithm of the alternative joint ventures structures and the counter organized in a special way for his program realization. Results. In work the stage of synthesis of the alternative joint ventures - structures in tensor methodology of research of the joint venture structures is in detail described, the purposes and problems of this stage are formulated, and also new algorithms of generation of programs of synthesis and an order of synthesis of alternative networks of Petri are offered. Conclusions. As a result of the conducted research the system which can be applicable for the analysis of the small joint ventures structures has been developed, and also the directions of further researches for the purpose of a possibility of use of the given system for the joint venture structures of bigger dimension are defined.
Key words: Petri's networks, tensor, tensor methodology.
Введение
Сложно недооценить значимость моделирования в современной науке. В настоящее время моделирование является междисциплинарным общепризнанным методом, который отличается объективностью, адекватностью и позволяет всесторонне анализировать многие явления. Активное использование моделирования стало характерной особенностью науки XX-XXI вв. [1].
В области вычислительной техники используется ряд аппаратов моделирования, среди которых особое место занимают сети Петри (СП) - математический аппарат, описывающий структуру и взаимодействие параллельных процессов в динамических дискретных системах. Теория сетей Петри представляет аппарат, который позволяет при описании модели учесть преимущества различных подходов к описанию семантики параллельных систем [2].
Теория сетей Петри имеет множество применений в области вычислительной техники, одним из которых является проектирование параллельных вычислительных систем (ВС). Вопрос проектирования параллельных ВС достаточно актуален в силу того, что появляется все больше задач, которые не могут быть решены с помощью последовательных ВС, что обусловливает привлечение дополнительных мощностей в виде параллельных вычислительных структур [3, 4].
Однако часто при построении модели в процессе проектирования системы важно принимать во внимание необходимость построить наиболее простую модель с точки зрения количества составляющих ее элементов, т.е. свести к минимуму избыточности модели. Теория сетей Петри не имеет формальной методологии, позволяющей оценить и свести к минимуму избыточность СП-модели. Тем не менее существует тензорная методология исследования СП-моделей [5], которая потенциально имеет возможность взять на себя эту роль, но это безусловно требует дополнительных исследований, которые сопряжены с огромным количеством рутинных операций, что затрудняет этот процесс. Таким образом, можно заключить, что задача разработки программного средства тензорного анализа и синтеза СП-моделей для более детального исследования этой методологии достаточно целесообразна.
1. Использование тензорной методологии при исследовании СП-структур
Общая схема тензорного анализа и синтеза СП-моделей представлена на рис. 1. Выделяют следующие этапы использования тензорной методологии при исследовании СП-структур:
1) построение СП-модели, моделирующей работу системы;
2) декомпозиция исходной модели на ЛБФ (линейные базовые фрагменты);
3) разбиение ЛБФ на примитивные фрагменты, которые являются представлением исходной СП-модели в другой системе координат; на этом же этапе строится тензор преобразования С, позволяющий вернуться к системе координат исходной СП-модели;
4) синтез альтернативных (эталонных) СП-моделей;
5) преобразование альтернативных СП-моделей в эквивалентные модели в исходной системе координат;
6) сравнение полученных СП-моделей с исходной с целью выявления модели наиболее простой структуры.
Рис. 1. Общая схема тензорного анализа и синтеза СП-моделей
В ходе выполнения научно-исследовательской работы по теме использования описанной выше методологии для исследования СП-структур было
разработано аналитическое программное средство, структура которого показана на рис. 2 и 3.
Рис. 2. Основные потоки данных и управления системы
Рис. 3. Взаимодействие компонентов системы
Как видно на рис. 3, система состоит из нескольких взаимосвязанных компонентов и подсистем, часть из которых в совокупности составляет подсистему графического взаимодействия, предоставляющую пользователю возможности редактирования СП-моделей, определения параметров синтеза и критериев анализа, просмотра отчетов, а также просмотра графиков и диаграмм.
Формирование отчетов и графиков происходит на заключительных этапах работы системы после проведения многокритериального анализа, в свою очередь базирующегося на введенных пользователем данных критериев (см. рис. 2). Подсистема многокритериального анализа является инструментом оценки синтезированных эквивалентных СП-структур и предоставляет возможность построения 3Б моделей СП, а также столбчатых гистограмм по выбранным метрикам анализа.
Для оценки синтезированных эквивалентных СП-структур используются следующие метрики анализа:
1) количество простейших элементов позволяет определить ранг системы;
2) сумма весов входных и выходных позиций сети позволяет произвести суммарную оценку входных и выходных данных, что представляет интерес с точки зрения исследования поведения системы в целом, и может быть применимо к моделям типа «черный ящик»;
3) число объединений переходов и позиций, полученных в результате синтеза, позволяет судить о степени сложности системы относительно ее функциональности.
Результаты подсчета записываются в определенный файл в виде списка точек в трехмерном пространстве. Данный файл используется модулем графического отображения трехмерного графика и столбчатых диаграмм по выбранным критериям.
Помимо данных критериев анализа пользователь представляет базовую информацию, без которой работа системы невозможна: данные СП-модели, а также данные параметров синтеза (см. рис. 2). Разработанное программное обеспечение (ПО) позволяет загрузить исходную СП-структуру из xml-файла, полученного в результате описания СП-структуры в графическом редакторе Vive, а выбор способа разбиения СП-модели на ЛБФ определяет параметры синтеза в дальнейшем.
После того, как все необходимые данные загружены, полученная СП-модель обработана, а параметры синтеза определены, свою работу начинает подсистема синтеза СП-моделей (см. рис. 3). Данная подсистема включает несколько этапов, соответствующих алгоритму тензорного анализа СП-структур, при этом большой интерес с точки зрения реализации представляет этап синтеза альтернативных СП-структур [6]. В силу того, что он достаточно нетривиален и должен обладать высоким быстродействием и низким потреблением памяти, требуется его более подробное рассмотрение.
2. Задача генерации программ синтеза альтернативных СП-моделей
Анализ значительного объема эталонных СП-моделей, полученных в результате синтеза всех возможных сетей из примитивных фрагментов, не является целесообразным и является препятствием для его программной или аппаратной реализации с целью дальнейшего изучения. Позиционно-ориентированные и переходо-ориентированные ограничения на этапе синтеза, снижая количество допустимых эталонных СП-моделей, делают эту задачу более выполнимой, позволяя применять метод тензорного анализа для исследования более сложных СП-структур, представляющих модель вычислительной системы.
Задача синтеза альтернативных СП-моделей сводится к перебору всех неупорядоченных разбиений на множества объединяемых переходов и позиций с учетом описанных ограничений. Следовательно, для достижения поставленной цели необходимо определить алгоритм получения уникальных программ синтеза, представленных в виде векторов Vt и Vp для переходов и
позиций соответственно, а также определить механизм проверки полученного вектора на соответствие требуемым ограничениям.
Решение этой задачи ранее рассматривалось в статье [7], однако разбиение на подмножества объединяемых позиций и переходов рассматривалось с другой точки зрения. Примитивной системе сопоставлялся определенного вида вектор V, состоящий из двух последовательностей У и Ур, каждая из которых включает |т| и |Р| элементов соответственно. При этом считается, что элемент последовательности равен нулю, если соответствующая позиция (или переход) примитивной системы не принадлежит подмножеству объединяемых позиций (или переходов), и элемент последовательности больше нуля, если соответствующая позиция (или переход) принадлежит подмножеству объединяемых позиций (или переходов). Исходя из этого каждый элемент последовательности определяет, участвует ли данная позиция или переход в операции объединения, или к какому объединяемому подмножеству она относится. Так как минимальное количество элементов, входящих в подмножество объединяемых элементов, равно 2, то потребуется тг значений для определения количества множеств объединяемых переходов и гр значений для определения количества множеств объединяемых позиций, где:
(Т (
(Р (
1; гр = ^
р 2
Следовательно, е У, = 0,7 , а также ур еУр , ур = 0,гр . Наличие
одинаковых положительных значений элементов последовательности У или Ур говорит о том, что данные элементы входят в одно объединяемое подмножество.
Таким образом, если части У и Ур вектора V представляют собой некоторые числа разрядности т = | Т | или и = | Р | в системах счисления 7 или гр соответственно, то алгоритм синтеза всех возможных СП-моделей из примитивной системы сводится к перебору всех возможных значений вектора V. В соответствии с данным алгоритмом можно следующим образом оценить количество генерируемых альтернативных СП-моделей:
т Л
+ 1
_ 2 _ /
+1
к
Однако среди СП-моделей, генерируемых описанным алгоритмом, существуют такие, которые являются полностью эквивалентными, так как допускаются разбиения, отличающиеся только номерами подмножеств объединяемых элементов при их одинаковом составе.
Алгоритм прямого перебора всех возможных значений счетчиков У и Ур является избыточным в силу необходимости дополнительного анализа полученных данных на корректность и эквивалентность. Поэтому предлагается разработать алгоритм, позволяющий непосредственно получать уникальные программы синтеза, соответствующие всем возможным вариантам разбиения множеств переходов или позиций на подмножества объединяемых вершин, оцениваемых числами Белла [8].
2
Рассмотрим основные принципы предложенного подхода, который является итеративным.
Пусть имеется множество вершин Первый элемент Wo образует единственное первое подмножество объединяемых вершин, которое обозначается числом 1. Каждая следующая рассматриваемая вершина
^^, / = (1, ) может быть объединена с одним из существующих подмножеств объединяемых вершин, используя одно из существующих обозначений, или образовать новое подмножество, введя новое обозначение подмножества. Предложенный алгоритм формирования всех возможных вариантов подмножеств можно представить в виде дерева на примере множества из 4 вершин (рис. 4).
Рис. 4. Порядок формирования множества уникальных программ синтеза
Как показано на рис. 4, каждый листовой элемент дерева (выделено цветом) представляет собой уникальную программу синтеза. Элемент вектора обозначает номер подмножества объединяемых вершин, которому принадлежит соответствующий элемент. Таким образом, задача на данном этапе сводится к получению сформированных указанным способом программ синтеза для позиций и переходов.
В ходе практических исследований было выявлено, что наиболее быстрой и наименее требовательной к объему памяти оказалась реализация предложенного алгоритма в виде организованного особым образом счетчика.
Пусть V - вектор, представляющий собой счетчик, разрядность которого равна . Исходя из принципов предложенного метода генерации программ синтеза очевидно, что значение любого разряда не превосходит максимального значения старших для него разрядов более чем на 1. Следовательно, целесообразно ввести второй вектор Я той же разрядности, каждый элемент которого будет являться ограничением соответствующего элемента вектора V. Таким образом, метод заключается в реализации счетчика, система счисления которого установлена отдельно для каждого разряда. Для решения поставленной задачи генерации уникальных программ синтеза достаточно определить операцию инкрементирования для данного счетчика, алгоритм которой представлен на рис. 5.
VI := V; + 1
Рис. 5. Алгоритм операции инкрементирования счетчика по переменной системе счисления
Для данной схемы приняты следующие обозначения:
- 1 - номер текущего разряда;
- СЕ - флаг переноса;
- ОЕ - флаг переполнения;
- с - номер старшего разряда, для которого зафиксирован перенос. Операция инкрементирования начинается с увеличения на 1 младшего
разряда счетчика. Если значение разряда не превосходит значение соответствующего элемента ограничивающего вектора, операция завершена. В противном случае текущий разряд сбрасывается в 1, фиксируется перенос и запоминается номер текущего разряда. Данный шаг повторяется для старших разрядов, пока для очередного элемента происходит переполнение, или по достижению разряда у0 .
При фиксации переполнения происходит коррекция ограничивающего вектора для разрядов младших с включительно. Ограничением для данных разрядов становится максимальное значение элементов, старших с.
В случае переполнения значение счетчика и ограничивающего вектора сбрасывается в начальное состояние.
Предложенный алгоритм обладает следующими преимуществами:
1) каждая итерация позволяет получить уникальную программу синтеза, позволяя избежать дополнительного этапа проверки программы на корректность и эквивалентность;
2) ограниченный и фиксированный объем памяти: в каждый момент времени необходимо хранить один массив, соответствующий счетчику, и один массив, отвечающий вектору ограничений значений каждого разряда.
3. Задача проверки соответствия программы синтеза ограничениям
Следом за этапом получения программы синтеза следует этап ее проверки на соответствие базовым позиционно- и переходо-ориентированным ограничениям. В качестве решения данной задачи был введен вектор ограничений, который отражает распределение вершин или переходов на подмножества вершин, для которых запрещена операция объединения.
Для переходо-ориентированных ограничений данный вектор содержит количественное распределение переходов между линейными базовыми фрагментами. Применительно к позиционно-ориентированным ограничениям -распределение множества позиций примитивной системы.
Построение предложенного вектора осуществляется анализом соответствующей СП-модели путем поиска и группировки связанных между собой позиций или переходов. Мощность полученных таким образом подмножеств определяет содержимое вектора ограничений.
Таким образом, подобного вида вектор позволяет определить подгруппы внутри программы синтеза, в рамках которых должны отсутствовать повторяющиеся значения элементов, являясь простым и компактным представлением налагаемых ограничений.
Заключение
В результате исследования задачи синтеза альтернативных СП-структур были рассмотрены особенности данного этапа и проведен анализ существующего алгоритма синтеза СП-моделей. Исходя из этого были сформулированы основные цели и задачи данного этапа. Предложен новый алгоритм генерации программ синтеза и порядок синтеза альтернативных сетей Петри, а также обоснована целесообразность их использования вместо существующего алгоритма.
Однако текущее состояние системы имеет ряд недостатков, препятствующих ее дальнейшему развитию, наиболее существенными из которых являются низкая скорость вычислений и немасштабируемая архитектура. Для решения этой проблемы предлагается проведение работы по нескольким направлениям. Во-первых, с целью оптимизации вычислений, сопряженных с анализом СП-моделей, необходимо переработать использующиеся реализа-
ции алгоритмов с целью максимизации их быстродействия. Помимо этого, необходима минимизация выделения и освобождения памяти, что позволит выделять память для хранения объекта единожды, учитывая исходя из данных его потенциальный наибольший размер. Это также должно оказать положительное влияние на быстродействие. Также предлагается использовать алгоритмы модификации коллекций данных, исключающие необходимость последующей сортировки. Подобные изменения должны максимизировать скорость выполнения вычислений, сопряженных с анализом СП-моделей.
Таким образом, в результате проведенного исследования были предложены новые методы реализации синтеза альтернативных СП-моделей, а также определены направления дальнейших исследований с целью повышения скорости вычислений и уменьшения объема используемой памяти. Планируется расширить возможности влияния пользователя на этап синтеза СП-моделей, а именно добавить функционал, позволяющий создавать группы позиций и переходов, а также определять отношения (разрешение/запрещение объединения) между такими группами и внутри любой из них.
Список литературы
1. Мампе, И. Метод моделирования как один из наиболее адекватных, объективных и надежных фундаментов научных исследований / Иоанна Мампе // Язык и культура. - 2009. - № 4. - С. 55-59.
2. Сетевая модель языка Т на основе цветных безопасных иерархических рекурсивных сетей Петри / Д. В. Пащенко, Д. А. Трокоз, Г. В Мартяшин, Е. А. Бальзанни-кова, К. С. Максимова // Известия высших учебных заведений. Поволжский регион. Технические науки. - 20l5. - № 3. - C. 25-35.
3. Dubravin, A. V. Formal and conceptual definitions of the hybrid model of distributed computings in networks / A. V. Dubravin, S. A. Zinkin, D. V. Paschenko // International Siberian Conference on Control and Communications, SIBCON 20l5 : Proceedings. -Omsk, 20l5.
4. Pashchenko, D. Formal transformation inhibitory safe Petri nets into equivalent not inhibitory / D. Pashchenko, D. Trokoz, N. Konnov, M. Sinev // Procedia Computer Science. - 20l5. - Vol. 49. - P. 99-l03.
5. Kron, G. Tensor Analysis of Networks / Gabriel Kron. - New York : J. Wiley & Sons, inc., l939 ; London : Chapman and Hal, l965. - P. l0l-l03, lll.
6. Мартяшин, Г. В. Вопросы синтеза СП-моделей в тензорной методологии исследования СП-структур / Г. В. Мартяшин, Е. А. Бальзанникова, К. С. Максимова // Новые информационные технологии и системы (НИТИС - 2015) : сб. науч. ст. XII Междунар. науч.-техн. конф. - Пенза : Изд-во ПГУ, 20l5. - C. 60-63.
7. Кулагин, В. П. Тензорные методы исследования структур сетей Петри / В. П. Кулагин // Информационные технологии. - 20l5. - Т. 2l, № 2. - С. 84-94.
8. Aitken, A. C. A Problem in Combinations / A. C. Aitken // Mathematical Notes. - l933. -Vol. 28. - P. xviii-xxiii. - DOI: l0.l0l7/Sl757748900002334
Пащенко Дмитрий Владимирович
доктор технических наук, профессор, кафедра вычислительной техники, Пензенский государственный университет E-mail: [email protected]
Pashchenko Dmitry Vladimirovich doctor of technical sciences, professor, sub-department of computer engineering, Penza State University
Мартяшин Георгий Викторович
аспирант,
Пензенский государственный университет E-mail: [email protected]
Martyashin Georgy Viktorovich postgraduate student, Penza State University
Максимова Кристина Станиславовна
студентка,
Пензенский государственный университет E-mail: [email protected]
Бальзанникова Елена Алексеевна
студентка,
Пензенский государственный университет E-mail: [email protected]
Maximova Christina Stanislavovna
student,
Penza State University
Balzannikova Elena Alekseevna student,
Penza State University
Тархов Кирилл Юрьевич
аспирант,
Пензенский государственный университет E-mail: [email protected]
Tarhov Kirill Yurievich postgraduate student, Penza State University
УДК 004.415 Пащенко, Д. В.
Алгоритм синтеза альтернативных сетей Петри для аналитического программного средства исследования СП-моделей с использованием тензорной методологии / Д. В. Пащенко, Г. В. Мартяшин, К. С. Максимова, Е. А. Бальзанникова, К. Ю. Тархов // Модели, системы, сети в экономике, технике, природе и обществе. -2016. - № 2 (18). - С. 231-241.