Научная статья на тему 'Свойства графов задач сетевого планирования и управления'

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

CC BY
199
69
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ЗАДАЧА СЕТЕВОГО ПЛАНИРОВАНИЯ И УПРАВЛЕНИЯ / СПИСКИ ПРЕДШЕСТВЕННИКОВ / ГРАФ ПРОЕКТА / МИНИМИЗАЦИЯ ЧИСЛА ФИКТИВНЫХ РАБОТ / PROBLEMS OF NETWORK PLANNING AND MANAGEMENT / LISTS OF PREDECESSORS / GRAPH OF THE PROJECT / MINIMIZATION OF THE REQUIRED NUMBER OF DUMMY JOBS

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

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

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

Properties of graphs of problems network planning and management

Properties of a task graph of an optimum investment are considered the additional limited resource for reduction of a critical way of the network project at non-uniform marking change of arches graph of the project. The algorithm construction of the count of the project on the set matrix of precedence of works is offered. The algorithm reduction lists of technological precedence of works of the project to lists of direct precedence by correct ordering is developed. Examples of addition fictitious works are resulted and reception minimization of necessary number of fictitious works for simplification of the count the project is specified. It is shown that, on an extreme measure, with addition of fictitious works, columns of the project it will be constructed.

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

УДК 519.876.3, 519.857

СВОЙСТВА ГРАФОВ ЗАДАЧ СЕТЕВОГО ПЛАНИРОВАНИЯ И УПРАВЛЕНИЯ

А. В. Докучаев, А. П. Котенко

Самарский государственный технический университет,

443100, Самара, ул. Молодогвардейская, 244.

E-mails: docuhaevrud@gmail. com, akol959@mail .ru

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

Ключевые слова: задача сетевого планирования и управления, списки предшественников, граф проекта, минимизация числа фиктивных работ.

1. Постановка задачи. Продолжено [1-3] изучение задачи сетевого планирования и управления (СПУ) связным проектом Р = {(ф)}^ из проектных работ

а(г) \ г Фз а(г) ф a(j) с предшественниками s(a(i)) сРи временем выполнения

t(a(i),x(i)) : PxU(X) ->■ R+ при вложении ресурса x(i) € U(X) из разбиения

к

U(X) d=f {x(i)}ki=l : X = (J x(i), x(i) f) x(j) = 0.

i= 1 i^j

Здесь s(a(i))—собственное (возможно, пустое) подмножество работ проекта Р, требующих завершения до начала выполнения работы а(г).

Ресурс X может быть вещественным числом с разбиением на неотрицательные слагаемые 0 ^ i ж(*) ^ X (энергетические затраты в химических или ядерных реакциях, зарядовые затраты в ядерных реакциях, финансы и т.п.) или множители 1 < nti^(i) ^ X (передаточные числа в системе передач, коэффициенты усиления в каскадных системах управления, переменные процентные ставки, индексы роста и т. п.) дискретным множеством произвольных элементов X = {yt}t=i с разбиением на подмножества U(X) С 2х (признаки неколичественной природы, например, персоналии) и т.д.

Александр Владимирович Докучаев, аспирант, каф. прикладной математики и информатики. Андрей Петрович Котенко (к.ф.-м.н., доцент), доцент, каф. прикладной математики и информатики.

Оптимизируется распределение ресурса {ж(г)}^=1, минимизирующее суммарное время выполнения проекта Р : ^(а(*)> х{%)) —> тт. (Возможно

неаддитивное (к примеру, мультипликативное) определение целевой функции).

2. Сокращение списков предшественников. Опишем отношение Б предшествования (цБа^ проектных работ € Р матрицей предшествования

й = Ыг,Мк^=1'.

Ф,3) а= х(а(г), «(«С/)))>

где

— характеристическая функция.

Таким образом, единицы в г-той строке матрицы Б указывают на предшествование работы а(г) работам соответствующих столбцов. Тогда транспонированная матрица 8Т опишет обратное отношение б'-1 следования ajS~lai проектных работ: единицы в г-том столбце соответствующих строк матрицы Б7" указывают на предшествование работы а(г) работам соответствующих столбцов. Очевидно, отношения 5 и б'-1 транзитивны (б'2 С £, (>§-1)2 С С 5'-1), и в силу конечности множества проектных работ выполнены включения

0 = в*-1 С вк-2 С ... С 53 с 52 с 5

и

0 = (Я"1)*-1 С (в-1)*-2 С ... с (5-1)3 С (в-1)2 С в-1.

Назовём работу а(г) € Р непосредственным предшественником работы а(^) € Р, если х(а(г), Ка0'))) = 1 и нет другой работы:

а(1) € Р : х(а(г),з(а{1))) = х(а(0, «(«О'))) = 1-

В противном случае предшествование (следование) назовём опосредованным.

С помощью списков непосредственных предшественников {«*(а(г))}^=1 определим отношение Б* непосредственного предшествования к х к-матрицей непосредственного предшествования в* = ||з* (*>.?') 11^=1:

«*(*>.?) а= х(а(г),«*(аС/)))>

а транспонированной матрицей Б*"1"—обратное отношение 5'*-1 непосредственного следования проектных работ. При этом отношения 5* и 5'*-1 в общем случае транзитивными не являются, так как

к—1 к—1

5* = 5 - у в*-1 = в~1 - у^-1)*.

1=2 1=2

Сократим списки предшествования {«(а(г))}^=1 до списков непосредственного предшествования {з*(а(г))}^=1 и перестановкой строк и столбцов матрицы предшествования Б правильно упорядочим проектные работы:

Х(а0'), в*(а(г))) = 0, г < ;'.

В дальнейшем считаем исходную нумерацию проектных работ {(я(*))}^=1 правильной, а исходные списки предшественников {«(а(г))}^=1 сокращёнными. Матрица непосредственного предшествования правильно упорядоченных работ

в = (А[*1 х^1], А[г2х^2], • • •, А^х^]), 2 ^ г ^ к - 1,

г г—1

*1 = 31 = *2) ,?2 = *3) ) $г— 1 = V = Зг^ 'У = 'У ' jt = к,

1=2 г=\

верхняя треугольная блочно-цепочная с нулевой главной диагональю, состоящая из нулевых элементов и непрерывной цепочки г^х^-блоков А[г*х^] (1 ^ ^ г), из которых первый и последний блоки квадратные нулевые:

А[*1 х ^1] = 0, А[ггх>]=0,

а остальные — ненулевые:

А[г*х^]/0, 2^^ г-1.

Пример 1. Матрица непосредственного предшествования правильно упорядоченных 9 проектных работ {а(*)}®=1 = Р может иметь вид

/ “(1)1“(2)}^1 А[*1хл] О О

V о

а(3)|а(4)|а(Б)}^'2

А[г2х^2]

О

О

О

а(6)|а(7)}^'3

О

А[гзх^з]

О

О

а(8)|а(9)}^4

О

о

А[г4х^4]

А[г5х;5]

\

а(1)|а(2)}г2

з(3)|а(4)|а(5)}г3

а(6)|а(7)}г4

а(8)|а(9)}гб

3. Граф проекта. Построим орграф С(У, К) проекта Р (см. [3]). Определим сначала множество вершин V следующим образом.

Случай 1. Состоящий только из единиц (единичный) блок А[г*х^], 2 ^ ^

^ г — 1 соответствует общему завершению

уК(а(а(1))) = ук{а{а{2))) = ■ ■ ■ = ук{а{а{ц)))

и общему началу

г;н(а(/3(1))) = г»н(а(/3(2))) = • • • = ун(а(РЦг)))

проектных работ а(а(1)), а(а(2)), ..., а(а(ц)), а(/3(1), а(/3(2), ..., а(/3 (,?*)) € Р с номерами

*-1

1 ^ ^г3 = а( 1) < а(2) < • • • < а(г*) < /3(1),

8=1

Г

/3(1) < /3(2) < • • • < /50',) = £ ь.

8=*+1

При этом

a(s + 1) = a(s) + 1, 1 ^ s ^ it — 1;

/3(s + 1) = /3(s) + 1, 1 < s < j(t) - 1,

t

РШ = ^is+jt-

s=1

Добавим вершину v(a(l),a(2),... ,a(it); /3(1),/5(2),...,/5(jt)) € V, соединяющую указанные проектные работы (см. рис. 1). Таким образом,

v(a(l),a(2),... ,a(it); /3(1),/3(2),..., P(jt)) =

= vK(a(a( 1))) = vK{a{a{2))) = ■ ■ ■ = vK(a(a(it))) =

= vH(a(P( 1))) = vH(a(P( 2))) = • • • = vH(a(P(jt))).

Можно считать каждую добавленную вершину

и(а(1),а(2),... ,а(г4); /3(1), /3(2),..., p(jt)) обозначением полного двудольного графа

К (it, jt), l^k^k-1, l^jt^k-1

С ДОЛЯМИ K(l,it) МОЩНОСТИ it И K(jt, 1) МОЩНОСТИ jt, имеющими единичные itxjt, 1 хг* и jtxl-матрицы соседства вершин соответственно. Доли К(1,ц) и K(jt, 1) описывают общие моменты завершения K(it, 1) = {■wK(fl(a(s)))}*t=1 и общие моменты начала K(l,jt) = {i,H(fl(/3(s)))}^t=1 соответствующих проектных работ (см. рис. 2).

Очевидно, что полученный подграф G(A[itxjt]), соединяющий проектные работы {a(ce(u))}^=1 U {a(P(u))}3*=1, планарен, а число вариантов прохождения полных путей проекта Р через единичный блок A[itxjt] равно itxjt.

Случай 2. Если среди элементов блока A [itxjt\, 2 ^ t ^ г — 1, есть нулевые, то соответствующий двудольный граф K(it,jt) не будет полным, и к проектным работам необходимо добавить фиктивные, так как в отличие от варианта на рис. 1 нельзя соединить одной вершиной выделенные it входящих и jt исходящих направленных дуг.

v(a(l), о.(2),..., a(it); /3(1), /3(2),..., /3(jt)) Рис. 1

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

t-1

«(і) =

S= 1

/3(1) = a(it + 1),

а(/3(1))

а(/3(2))

а(а(г4))

а(/3(г4))

Рис. 2

Пример 2. Рассмотрим 2х2-блочиую матрицу размерности 5x9 непосредственного предшествования проектных работ {(?(?’)}Цб работами {(?■(?’) }|=1:

А[5х9] =

/1 1 1 1 1 1 1 1 1\

1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1

1 1 1 1 0 0 0 0 0

и 1 1 1 0 0 0 0 оу

Объединяя события (см. рис. 3):

г>к(а(1)) = Ук(а( 2)) = ук(а( 3)) = г>к(а(4)) = ук(а( 5)) = ун(а( 6)) =

= г>н(а(6)) = ин(а(7)) = г>н(а( 8)) = г>н(а(9)) = г>н(а( 10)) =

= г>н(а(11)) = г>н(а(12)) = г>н(а(13)) = г>н(а(14)),

введём дополнительную (иначе — фиктивную) работу Ъ\ для сохранения непосредственного предшествования работ {а(г)}?=б работами {(?(?’) }|=4, непосредственного предшествования работ {а(*)}-1ю работами {а(г)}?=1 и опосредованного предшествования работ {а(г) }|)=6 работами {(?(?’) }?=1-

Перестановка проектных работ {а(*)}®=6 и {я-СОК^ю и добавление фиктивной работы 6(1) между а(5) и а(10) не изменяет прочие блоки матрицы непосредственного предшествования Б, устанавливая правильное упорядочение объединённого множества работ 6(1) и {а-(0}|= 1 и превращая блок А[5х9] в 2 х 2-блочную 6 х 10-подматрицу с двумя единичными блоками размерности

а(10)

а(11)

а(12)

а(13)

а( 14)

3x6 и 3x4 в разорванной цепочке ненулевых блоков выше главной диагонали матрицы Б:

Ь(1) а( 10) “(11) а( 12) а( 13) “(14) а(6) а( 7) а( 8) а(9) \

1 1 1 1 1 1 0 0 0 0 а(1)

1 1 1 1 1 1 0 0 0 0 0.(2)

1 1 1 1 1 1 0 0 0 0 о(3)

0 0 0 0 0 0 1 1 1 1 о(4)

0 0 0 0 0 0 1 1 1 1 0.(6)

0 0 0 0 0 0 1 1 1 1 Ь( 1) /

Пример 3. Заметим, что перестановка проектных работ {а(*)}|=1, как п {а(*)}|1«, не меняет правильности упорядочения. Так, перестановкой работ {а(г)}1= 6 примера 2 можно получить другую 2х2-блочную 5х9-матрицу непосредственного предшествования работ {а(*)}г116 работами {а(*)}|=1

/1 1 1 1 1 1 1 1 1\

1 1 1 1 1 1 1 1 1

1 1 1 1 1 1 1 1 1

0 0 0 0 1 1 1 1 1

^0 0 0 0 1 1 1 1 іУ

которой после объединения событий (см. рис. 4) ук(а( 1)) = ук(а(2)) = ук(а( 3)) = ун(а( 6)) = ун(а( 7)) = ун(а( 8)) = ун(а( 9)),

■ик(а(4)) = ук(а(5)) = г)н(а(10)) = ьн(а( 11)) = ьн(а( 12)) = г;н(а(13)) = г)н(а(14))

и введения дополнительной (фиктивной) работы 6(1), сохраняющей непосредственное предшествование работ {а(*)}®=6 работами {(ф)}|=1, непосредственное предшествование работ {а(*)}|110 работами {а(*)}|=4 и опосредованное предшествование работ {а(*)}|110 работами {а(*)}|=1, соответствует следующий подграф (см. рис. 4).

Добавление фиктивной работы 6(1) между а(5) и а(6) не изменяет прочие блоки матрицы непосредственного предшествования Б, устанавливая правильное упорядочение объединённого множества работ 6(1) и {(ф)}^ и превращая блок А[5х9] в 2х2-блочную 6х 10-подматрицу

К1) а( 6) а(7) о(8) о(9) а (10) а(11) а(12) а(13) а(14) \

1 1 1 1 1 0 0 0 0 0 а(1)

1 1 1 1 1 0 0 0 0 0 о(2)

1 1 1 1 1 0 0 0 0 0 о(3)

0 0 0 0 0 1 1 1 1 1 о(4)

0 0 0 0 0 1 1 1 1 1 0.(6)

0 0 0 0 0 1 1 1 1 1 Ь( 1) /

с двумя Зх5-единичными блоками в разорванной цепочке ненулевых блоков выше главной диагонали матрицы Б.

4. Алгоритм добавления фиктивных работ. Приведём универсальный алгоритм добавления необходимого числа фиктивных работ сц ф Р, г ^ к + 1.

Рассмотрим ненулевой неединичный блок А[іх^ из строк В ^ {а{и)Уи=1 и столбцов

С и= {а(и)У^і+1, 1 = ^іи, 1 ^ г = ц, 2 < і < г - 1

і-1

и=1

проектных работ в непрерывной цепочке {А[г*х^]}^=1 блочно-цепочной матрицы непосредственного предшествования Б. Будем считать множество предшествующих проектных работ В фактор-множеством отношения равенства строк матрицы А[гх_/]. Тогда отношение непосредственного следования з*-1 определит взаимно однозначное отображение

„*-1

на множестве всех подмножеств множества С. На замыкании И образа в*~1(2с) операцией пересечения подмножеств построим ориентированное дерево отношения

Д, € Р>(П1

£>2 ^ Р>2 С £>і)

исключив пустое множество 0. Дугами этого дерева являются искомые фиктивные работы, необходимые для построения подграфа С(А[гх_/]), связывающего проектные работы В и С. Следовательно, завершено построение подграфа для неединичного блока из случая 2 п. 3.

Являясь деревом, подграф С(А[гх^’]) планарен, а число вариантов прохождения полных путей проекта Р через блок А[гх^ равно 1х]. Таким образом, общее число М полных путей проекта Р определяется произведением вариантов их прохождения через все блоки {А[г* х^]}*=2 •

Г— 1

м = \[ч = \\н

і= 1

і= 2

5. Завершение построения графа проекта. Теперь из полученных подграфов {G(A[itxjt])}lZ2 составим граф G(V, R) проекта Р. Для этого объединим начальные вершины стартовых работ в начальную вершину всего проекта и конечные вершины финишных работ — в конечную вершину всего проекта. Тогда все конечные вершины блока A[i\xji] станут начальными вершинами блока А[?2хJ2] и далее до конечных вершин блока A[ir_i xjr-i], ставших начальными вершинами блока A[irxjr\.

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

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Докучаев А. В., Котенко А. П. Оптимизация привлечения дополнительных ресурсов в сетевом планировании // Вестн. Сам. гос. техн. ун-та. Сер. Физ.-мат. науки, 2010. — №1(20). - С. 234-238.

2. Докучаев А. В., Котенко А. П. Построение графа задачи оптимизации сетевого планирования и управления / В сб.: Информационные, измерительные и управляющие системы (ИИУС-2010): Материалы международной научно-технической конференции (17-21 мая 2010 г.). - Самара: СамГТУ, 2010. - С. 291-294.

3. Докучаев А. В., Котенко А. 77. Построение графа задачи оптимизации сетевого планирования / В сб.: Труды Всероссийской научной конференции. Часть 2: Моделирование и оптимизация динамических систем и систем с распределенными параметрами / Ма-тем. моделирование и краев, задачи. — Самара: СамГТУ, 2010. — С. 86-90.

Поступила в редакцию 02/VII/2010; в окончательном варианте — 30/IX/2010.

MSC: 90В10, 90С39

PROPERTIES OF GRAPHS OF PROBLEMS NETWORK PLANNING AND MANAGEMENT

A. V. Dokuchaev, A. P. Kotenko

Samara State Technical University,

244, Molodogvardeyskaya St., Samara, 443100, Russia.

E-mails: docuhaevrud@gmail. com, akol959@mail .ru

Properties of a task graph of an optimum investment are considered the additional limited resource for reduction of a critical way of the network project at non-uniform marking change of arches graph of the project. The algorithm construction of the count of the project on the set matrix of precedence of works is offered. The algorithm reduction lists of technological precedence of works of the project to lists of direct precedence by correct ordering is developed,. Examples of addition fictitious works are resulted and reception minimization of necessary number of fictitious works for simplification of the count the project is specified. It is shown that, on an extreme measure, with addition of fictitious works, columns of the project it will be constructed.

Keywords: problems of network planning and management, lists of predecessors, graph of the project, minimization of the required number of dummy jobs.

Original article submitted 02/VII/2010; revision submitted 30/IX/2010.

Alexander V. Dokuchaev, Postgraduate Student, Dept, of Applied Mathematics & Computer Science. Andrey P. Kotenko (Ph. D. (Phys. & Math.)), Associate Professor, Dept, of Applied Mathematics & Computer Science.

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