Научная статья на тему 'Об одном алгоритме укрупнения графа'

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

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

Текст научной работы на тему «Об одном алгоритме укрупнения графа»

ИЗВЕСТИЯ

ТОМСКОГО ОРДЕНА ОКТЯБРЬСКОЙ РЕВОЛЮЦИИ И ОРДЕНА ТРУДОВОГО КРАСНОГО ЗНАМЕНИ ПОЛИТЕХНИЧЕСКОГО ИНСТИТУТА им. С. М КИРОВА

Том 223 1972

ОБ ОДНОМ АЛГОРИТМЕ УКРУПНЕНИЯ ГРАФА

Ю. Н. ЕФИМОВ, В. И. КИЗЕВ, /В. И. НЕВРАЕВ/, П. А. СЕДЕЛЬНИКОВ

(Представлена научным семинаром УВЛ)

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

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

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

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

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

0= (7,Г).

Также задано подмножество подлежащих исключению вершин Г = {/'} множества I,

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

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

При первом просмотре топологии графа из нее выбираются «кусты»: вершины г и их отображения Гг с относящейся к ним метрикой г{ , для которых а на их место в топологию записываются нули. В результате этого будут выделены «кусты», представленные следующим образом:

После этого производится укрупнение «кустов». Для этой цели в памяти машины выделяется два поля. Выбранные «кусты» находятся в-первом поле. Процесс укрупнения 'начинается с просмотра первого поля и записи результата укрупнения во второе поле, затем производится просмотр второго поля и результат укрупнения записывается в первое поле и т. д.

При 'первом просмотре «кустов» выбираются такие вершины которые входят в отображение ГгА некоторой вершины 1'ь * Элементы отображения найденных вершин ГУ включаются в отображение вершины ¿/г, а из отображения этой вершины выбрасываются те его элементы, которые образуют пересечения с остальными вершинами. Таким образом, «куст» после первого просмотра будет записан во второе поле в следующем виде:

¿л(гьк и 1>\г/; п 0/(г/; П П Ф 0.

При этом производится эквивалентное преобразование метрики:

где Я— символ произвольной операции.

Аналогичные операции производятся над всеми вершинами «кустов». Затем первое поле очищается и описанная выше процедура производится над «кустами» 'второго поля. Процесс заканчивается тогда, когда

В худшем случае требуется <ртах(0 + 2 просмотров «кустов», где ф (/) — порядковая функция вершин графа [3].

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

Н (П* и Гг \Г,4 П к )/(Г/ П ПФ0.

14 -Лк

При этом также производится преобразование метрики

(пкЯп>)/(т1/г ПО^0.

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

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

б = (/, Гг) или С = ГГ1).

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

На основании вышеизложенного алгоритма была составлена программа для ЭЦВМ «Урал-11Б». Программа состоит из ряда последовательно работающих блоков.

Блок 1 осуществляет выборку «кустов» из исходной топологии графа по описку исключаемых вершин. Блок 2 осуществляет укрупнение кустов с преобразованием метрики. Блок 3 компонует результат укрупнения «кустов» и исходную топологию графа.

Программа содержит 450 команд. Время работы .программы для графа с 4000 вершин, коэффициентом сложности 5 и количеством подлежащих исключению вершин, равном 400, составило 3,5 мин.

ЛИТЕРАТУРА

1. С. И. 3 у х о в и д к и й, И. А. Р а д ч и к. Математические методы сетевого планирования. М., Изд-во «Наука», 1965.

2. Ю. Н. Ефимов. Временной анализ крупных сетевых графиков блочной струк* туры. Изв. ТПИ, т. 203. Изд-во ТГУ (в печати).

3. К. Б е р ж. Теория графов и ее применение. М., изд-во ИЛ, 1962.

2. Заказ 7462*

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