Декомпозиция графовых моделей информационных систем

В.В. Меньших, Е.Ю. Никулина,

доктор технических наук, профессор кандидат технических наук

ДЕКОМПОЗИЦИЯ ГРАФОВЫХ МОДЕЛЕЙ ИНФОРМАЦИОННЫХ СИСТЕМ

GRAPH MODELS DECOMPOSITION OF INFORMATION SYSTEMS

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

Mathematical methods of graph models decomposition of information systems (by processors and by logically interrelated operations groups) are presented . The proposed model leads to descend computational complexity task to find time estimates of information systems.

Введение

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

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

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

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

1. Графовая модель ИС

При оценке производительности ИС основным показателем эффективности её функционирования является время выполнения типового пользовательского запроса в рассматриваемом варианте модернизации.

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

Из анализа состава, структуры и условий функционирования РИС ОВД следует, что при нахождении временных характеристик системы необходимо описать процесс выполнения типового запроса на множестве элементов системы.

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

0=

где V — множество вершин, соответствующих множеству операций типового запроса; Е — множество дуг, устанавливающих отношение частичного порядка на множестве операций; Р — цвета вершин, номера которых соответствуют номерам исполнителей в составе системы; Т — веса вершин, определяющие временные характеристики отдельных операций.

Обозначим Т(О) — минимальную длину расписания, Ь(О) — критический путь для графа О [3]. Назовем графовую модель полной, если для каждого цвета существует орпуть, содержащий все вершины этого цвета.

Утверждение 1. Если граф О является полной графовой моделью, то критический путь графа О равен минимальной длине расписания, т.е. Ь(О) = Т(О).

Доказательство. Критический путь равен минимальной длине расписания при условии, что для каждой готовой к выполнению операции находится исполнитель [4]. Из определения полной графовой модели следует, что для каждой пары операций одного исполнителя задано отношение следования во времени, и поэтому не может быть двух операций одного исполнителя, одновременно готовых к выполнению. Следовательно, для полной модели Ь(О) = Т(О).

Обозначим А алгоритм преобразования исходной модели О с частичным упорядочением в полную графовую модель Оа. Точным называется алгоритм А *, для которого выполняется следующее равенство:

А* = Argmin

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

Разбиение графа О на ярусы — это разбиение множества вершин графа на непе-ресекающиеся подмножества V,-, г=1,2...Я, такие что

- никакие две вершины одного яруса несмежны в О;

- каждая дуга, начинающаяся в вершине ^ из яруса V,, заканчивается в ярусе с номером не менее, чем г+1;

- для каждой вершины V яруса V, (г>1) существует смежная ей вершина в ярусе Ог-1; вершины-источники составляют О1.

Граф О, будет называться приведённым к ярусно-паралельной форме, если каждой его вершине V ставится в соответствие номер яруса г=1,2, ...,К.

Коярус графа О — это пронумерованные в обратном порядке яруса графа О , полученного из О сменой направлений всех его дуг.

Значения номеров ярусов будут являться моментами начала выполнения соответствующих операций при выполнении следующих обязательных условий:

- время выполнения всех операций одинаково и равно единице времени;

- в каждом ярусе содержится не более одной операции каждого исполнителя.

Выполнение данных условий приведёт к получению оценок времени начала и

окончания операций, что является решением задачи построения расписаний выполнения множества задач.

2. Декомпозиция графовой модели ИС по исполнителям

Однако для реально функционирующих РИС, представленных яруснопараллельной формой, условие наличия не более одной операции каждого исполнителя

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

Вариантом такого преобразования является декомпозиция графовой модели О=(У, Е, Р, Т) на частные модели отдельных исполнителей в соответствии со следующей формулой:

О=№, Е, Т),

где i — номер индивидуального исполнителя;

Vi — множество операций г-го исполнителя; Ег — отношение частичного порядка на множестве операций V-, индуцированное отношением Е; Тг — веса вершин, определяющие длительности выполнения операций м исполнителем.

Отношение Ег индуцируется из Е следующим образом: (VI1, Vi2)е Е, если существует последовательность (V-*, И1)е Е, ..., (Жц, V]2)е Е.

Графовая модель Ог содержит множество вариантов упорядочивания заданий исполнителя г.

Решение задачи теории расписаний фактически заключается в замене отношения частичного порядка Ег для каждого исполнителя г отношением полного порядка иг и получении частной модели Нг=(¥г, иг, Тг).

На языке теории графов это означает, что граф Ог=(¥и Ег, Тг) является суграфом Нг, т.е. Нг получен из Ог добавлением новых дуг.

В отличие от Ог графовая модель Нг содержит единственный вариант упорядочивания заданий исполнителя -.

Синтез частных графовых моделей Нг приводит к получению общей графовой модели Н=(¥, и, Р, Т), где и= и иг.

геР

Утверждение 2. Общая графовая модель является полной.

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

Легко увидеть, что после преобразования графовой модели О=(¥, Е, Р, Т) в частичную модель Н=(У, и, Р, Т), будет выполнено второе необходимое условие. Приведение же частичной модели Н=(У,и,Р,Т) к ярусно-параллельной форме позволит оценить искомое время начала и окончания выполнения операций.

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

3. Декомпозиция графовой модели ИС по логически взаимосвязанным группам операций

Очень часто РИС построены таким образом, что выполнение группы операций Vk не может начаться, пока не будут выполнены все операции VI , предшествующие всем операциям из множества Vk . Тем самым, решение задач оптимизации можно осуществлять независимо друг от друга.

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

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

В нашем случае совокупность взаимосвязанных операций представляет собой ориентированный граф О = (V, Е, Р, Т), где V — вершины графа, соответствующие

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

Вершина а є V ориентированного графа G = (V, Е, Р, Т) является точкой сочленения, если удаление этой вершины и всех инцидентных ей дуг ведёт к увеличению числа компонент связности графа. Равнозначное утверждение состоит в том, что а является точкой сочленения, если существуют вершины Н и и, отличные от а, такие, что каждый путь из и в н (предполагается, что существует по крайней мере один такой путь), проходит через вершину а. Произвольный максимальный двусвязный подграф графа G называется компонентой двусвязности или блоком этого графа. Граф, содержащий точку сочленения, называется разделимым. Граф без точек сочленения называется двусвязным или неразделимым [4].

Для каждого графа G может быть определён двудольный граф блоков и точек сочленения:

G =

где В — множество блоков графа;

А — множество точек сочленения, являющихся стоками и источниками блоков исходного графа О;

К — множество дуг, направленных от блока Ъг к точке сочленения а,-, если aj — сток Ъг, и от точки сочленения а, к блоку Ъг, если а, — источник Ъг.

Пример разделимого графа и его двусвязные компоненты приведены на рисунке.

Точками сочленения являются вершины а3, а6 и а7, блоками — подграфы Ъ1 = {а1з а2, а3}, Ъ2 = {а3, а4, а5, а6}, Ъ3 = {а6, а7} и Ъ4 = {а7, а8, а9}.

Если информационный процесс представляет собой группы логически последовательно выполняющихся групп операций, то граф G оказывается ориентированной цепью с множеством дуг {(Ъ1з а1'),(Ъ2, а2),...,(ах, Ъж+1)}. В этом случае задача оптимизации может решаться отдельно для каждого блока, а время выполнения всех операций вычисляется в соответствии со следующим утверждением.

7 7

Ъ

4

Утверждение 3. Время выполнений всех операций графа О, для которого граф О является ориентированной цепью, определяется по следующей формуле:

s+1 s

T = ЕЧ - Еtaj

і=1 Н

где — время выполнения всех операций из блока ^; ^а] — время выполнения опе-

рации, соответствующей вершине а,.

Доказательство. Множество всех операций, представленных множеством вершин V графа G, разбивается на блоки Ъг и точки сочленения а,. Причём каждая точка

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

учитывается дважды. Это и доказывает справедливость формулы (4).

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

Заключение

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

1. Таненбаум Э., Ван Стеен М. Распределенные системы. Принципы и парадигмы. — СПб: Питер, 2003. — 880 с.

2. Меньших В.В., Никулина Е.Ю. Алгоритмы планирования выполнения заданий в вычислительных системах реального времени // Вестник Воронежского института МВД России. —2005.— №2(21). — С.76—80.

3. Татт У. Теория графов. — М.: Мир, 1988. — 424 с.

4. Конвей Р.В., Максвел В.Л., Миллер Л.В. Теория расписаний. — М.: Наука, 1975. — 360 с.

5. Оре О. Теория графов. — М.: Наука, 1980. — 336 с.

жении

время выполнения операции, соответствующей каждой точке сочленения,

і =1

ЛИТЕРАТУРА