
книги из ГПНТБ / Басакер Р. Конечные графы и сети
.pdfЭКОНОМИКА И СНАБЖЕНИЕ |
169 |
тор х является конечным, неотрицательным, по нену левым. Неотрицательный вектор w для незамкну той модели строится как обусловленный «список то варов» или «список окончательной потребности», для тех отраслей промышленности, которые соответствуют стро кам н столбцам, содержащимся в В* и не содержащим ся в В. Допустимые решения х моделей типа затраты — выпуск (незамкнутых или замкнутых) строятся как век торы уровня производства (величины выпуска), опреде ляющие выпуск каждой отрасли. Если для незамкнутой
модели существует матрица, |
обратная матрице |
(I—B), |
||
то можно показать, что она |
представлена в виде хоро-. |
|||
шо известного |
степенного ряда |
[75] |
|
|
|
(/ - |
= |
I ; вн. |
|
|
|
|
(1=0 |
|
Попытаемся |
теперь дать |
графотеоретическую |
форму |
лировку необходимых и достаточных условий существо
вания матрицы, обратной матрице |
{f—В) |
в незамкнутой |
модели типа затраты — выпуск. Д |
л я этого |
введем неко |
торые дополнительные определения [73] . Пусть D—• ориентированный граф и Н — сильно связный подграф D.
Сильно |
связный |
подграф |
Н будет |
называться |
|
макси~ |
|||||||
мальным |
в D тогда и.только |
тогда, |
когда |
к а ж д ы й |
силь |
||||||||
но связный подграф D либо |
является подграфом Н, ли |
||||||||||||
бо |
не |
содержит |
вершин, |
|
общих с Н. Сильно |
связный |
|||||||
подграф Н в D называется замкнутым в D тогда |
и |
толь |
|||||||||||
ко тогда, когда Н является |
максимальным |
и |
к а ж д а я |
||||||||||
вершина D, достижимая (посредством ориентированного |
|||||||||||||
пути) из любой вершины |
Н, |
содержится в Н. Пусть А = |
|||||||||||
= |
1|Яц||— неотрицательная |
|
квадратная матрица |
порядка |
|||||||||
п, |
т. е. а у ^ 0 |
для |
i, j — l |
, |
|
п. Конечный |
ориентиро |
||||||
ванный |
граф |
D(A) |
матрицы |
А определяется |
как |
граф, |
|||||||
который состоит из п вершин cci |
|
сс„ |
и |
множества |
|||||||||
дуг (ah, |
at) таких, |
что дуга |
(ос(, |
а,) |
существует |
в |
D(A) |
||||||
тогда и только тогда, когда |
а у > > 0 |
в А . Можно |
показать, |
||||||||||
что ориентированные графы |
£ )( £ *) |
и D(B), |
соответству |
ющие введенным выше замкнутым и незамкнутым мо делям, играют в а ж н у ю роль при исследовании протека ния технологических процессов и движения потоков ре-> сур сов.
170 |
ПРИКЛАДНЫЕ ЗАДАЧИ ТЕОРИИ ГРАФОВ |
[ГЛ. 6 |
Н е о т р и ц а т е л ь н ая квадратная матрица А называется субстохастической (по строкам), если сумма по каждой строке А не превышает единицы, т. е. а « ^ 0 , / \ =
п
s |
V |
Если |
сумма по каждой |
строке А |
точно |
||||
/ = 1 |
|
|
|
|
|
стохастической. |
|||
равна |
единице, то |
матрица |
называется |
||||||
Из |
приведенных выше рассуждений следует, что в замкну |
||||||||
той |
модели х(1—Л*)=0 |
матрица |
А* — |
стохастическая, |
|||||
а в незамкнутой модели х{1—/1)=со |
матрица |
А — суб |
|||||||
стохастическая. Приведем без доказательства |
следую |
||||||||
щую теорему (доказательство см. в |
[ 7 5 ] ) . |
|
|
||||||
|
Теорема 6.1. Пусть |
А — субстохастнческая |
матрица . |
||||||
Обратная матрица |
( / — Л ) - 1 |
существует |
тогда |
и |
только |
||||
тогда, когда в ориентированном графе D(A) |
нет |
замк |
|||||||
нутых |
сильно связных |
подграфов |
или когда |
в к а ж д о м |
|||||
сильно |
связном подграфе Я , |
замкнутом |
в D(A), |
сущест |
вует вершина, для которой сумма элементов соответст
вующей |
строки А меньше чем единица. |
|
|
||||
|
Эту |
теорему |
можно |
переформулировать |
следующим |
||
образом. |
|
|
А*—стохастическая |
|
|||
|
Теорема |
6.2. |
Пусть |
матрица |
|||
и |
А — любая |
главная подматрица А*. |
Обратная матри |
||||
ца |
( / — А ) ' 1 |
существует |
тогда и только |
тогда, когда не |
существует сильно связного подграфа, который является
вамкнутым в D(A) |
и в |
|
|
D{A'*). |
|
|
|
Н |
|
|
|
||||
Д о к а з а т е л ь с т в о . |
|
Предположим, что |
является |
||||||||||||
сильно связным подграфом D(A). |
Тогда |
Н |
замкнут |
в |
|||||||||||
D(A), |
а соответствующая |
ему |
матрица А |
является сто |
|||||||||||
хастической тогда н только тогда, когда |
II |
замкнут |
в |
||||||||||||
D(А*). |
И з теоремы |
6.1 |
следует, |
что |
ни один |
замкнутый |
|||||||||
сильно связный |
подграф |
в D(A) |
не замкнут |
в £>(/!*). |
|
||||||||||
Следствие 6.3. |
Пусть |
|
А *—стохастическая |
матрица. |
|||||||||||
Если |
D(A*) — с и л ь н о |
связный граф (т. е. Л * |
неприводима |
||||||||||||
или |
н е р а з л о ж и м а ) , |
то |
|
( / — Л ) - 1 |
существует |
для |
любой |
||||||||
главной подматрицы |
А |
матрицы |
А*. |
|
|
|
|
|
|
||||||
Упражнения |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
6.1. Пусть А— |
неотрицательная |
квадратная матрица |
порядка |
л, |
|||||||||||
в которой сумма |
по |
каждой |
строке |
положительная. |
Показать, |
что |
|||||||||
в ориентированном |
графе |
D(A), |
построенном для матрицы |
А: |
(1) |
су |
ществует, по крайней мере, одни замкнутый сильно связный подграф;
(2) каждая вершина D(A) связана не менее чем с одним Замкнутым сильно связным подграфом в D(A).
6.2] |
ЭКОНОМИКА И |
СНАБЖЕНИЕ |
|
|
171 |
||
8.2. |
Показать, что любая незамкнутая модель |
затраты — выпуск, |
|||||
имеющая, по крайней мере, одно допустимое решение, |
эквивалентна |
||||||
замкнутой модели затраты — выпуск с ограничениями. |
|
|
|||||
6.3. |
Пусть А — неотрицательная |
квадратная |
матрица порядка |
||||
п, х — положительный |
( « Х П |
вектор-столбец и |
у — положительная |
||||
( I X я ) |
вектор-строка. Пусть Я |
обозначает ограниченную |
матрицу |
по- |
|||
рядка п + 1 следующего |
вида: |
'IА |
х\\ |
|
|
|
|
\У |
д| . Ориентированный граф |
D{A) |
|||||
|
|
|
41 |
|
|
|
сильно связный. Показать, что если Л в Я отличается от нуль-матри
цы, то Я является примитивной п точная |
верхняя граница — индекс |
|||||||
примитивности \'(-Т) равна 4. |
|
|
|
|
|
|
||
Д р у г а я , предлагаемая |
ниже |
формулировка |
экономи |
|||||
ческой |
модели |
затраты — выпуск, |
основывается |
на |
тео |
|||
реме, |
которую |
довольно |
трудно |
доказать |
в рамках |
ог |
||
раниченного |
объема главы. |
Р а с с м о ф п м |
следующую |
<1
ч2 /
Рис. 6.1.
матрицу, элементы которой дают удельные величины затрат каждой отрасли на покупку товаров у других отраслей (указаны со знаком минус) и удельные значе-.
172 ПРИКЛАДНЫЕ ЗАДАЧИ ТЕОРИИ ГРАФОВ [ГЛ О
ния выпуска |
(указаны со знаком плюс) . |
Значения выч |
||
пуска расположены |
на главной диагонали |
[ 8 ] , [92] : |
||
0 V |
t); |
U a |
|
|
— 2 |
4 |
0 2 | |
Потребление (сумма |
по строкам). |
Определитель этой матрицы равен 38.
Рассмотрим граф, соответствующий этой межотрас
левой модели. Введем вершину |
общего |
потребления С |
и з а д а д и м поток (потребление) |
из этой |
вершины в к а ж |
дую отрасль. Величина этого потока равна чистому вы пуску отрасли и находится как сумма элементов соот ветствующей строки матрицы. Поток к Ui равен нулю. Следовательно, соответствующее ребро можно не рисо
вать на графе. Построим все возможные деревья |
графа |
|
(рпс. 6.1) и найдем произведение пропускных |
способно |
|
стей ребер. Сумма этих произведений, взятая |
по |
всем |
деревьям равна определителю приведенной |
выше |
мат |
рицы. Таким образом, 2 + 1 6 + 0 + 2 + 8 + 0 + 8 + 2 |
= 38. |
Положительные деревья соответствуют матрицам, суммы элементов строк которых больше млн равны нулю, а эле менты, расположенные вне главной диагонали, не явля ются положительным. Таким образом, единственное по ложительное дерево гарантирует положительный опре делитель. Такие матрицы (например, матрицы Леонтьева) с доминирующей диагональю представляют большой ин терес для математической экономики.
6.3. Линейное программирование и потоки в сетях
Потоки в сетях будут подробно рассматриваться да лее в главе 7. В данном случае будет дано лишь не формальное пояснение основной идеи потока с тем, что бы продемонстрировать связь задач о потоках с задача ми линейного программирования .
Пусть вершины VQ и v„ ориентированного графа обоз начают источник и сток некоторого вещества, протека ющего по дугам . Кроме того, предположим, что дуге из вершины vt в вершину Vj поставлена в соответствие про пускная способность или верхнее ограничение иа величи ну потока Ctj. Наконец, пусть С у обозначает стоимость
6,1] ЗАДАЧИ ТИПА ПЕРТ 173
единицы потока по дуге. Теперь задачу |
о |
потоке |
можно |
||||
представить в виде задачи линейного |
программирова |
||||||
ния, в которой требуется минимизировать |
^СцХц |
Д л я |
|||||
общего потока с из v0 |
в и„ при |
условиях |
|
|
|||
2 |
(Л-'о/ — Л'/о) = |
с, |
|
|
|
||
i |
|
|
|
|
|
|
|
2 (Хц — Xji) = |
0 |
для |
t * = l |
|
п — 1, |
|
|
I |
|
|
|
|
|
|
|
2 (•*-«/ |
Xju) |
= |
С, |
|
|
|
|
/ |
|
|
|
|
|
|
|
O ^ A ' i j ^ c . j |
для |
каждой |
дуги. |
|
Потоки в сетях иногда оказываются удобным сред ством решения задачи линейного программирования такого типа, которая известна под названием транспорт ной задачи .
6.4. Задачи |
типа П Е Р Т * ) |
Ориентированный граф |
является естественным сред |
ством для описания и анализа сложных проектов, тре бующих выполнения большого числа взаимосвязанных операций (работ) . Проектом может быть, например, про цесс разработки, построения и проверки некоторого узла или процесс проектирования и строительства здания,
включая этапы получения и подготовки места строитель |
|
ства. В общем случае предположим, |
что рассматривает |
ся некоторый хорошо определенный |
проект и множество |
всех операций, связанных с |
выполнением проекта, мож |
|
но |
разделить на отдельные |
непересекающиеся операции |
ci\, |
a<i, • . . , Оц. |
|
Конечно, существуют различные способы разбиения проекта на отдельные части. Выбор конкретного разби ения зависит от соображений, которые будут рассмот рены ниже. (Вообще говоря, отдельные операции д о л ж ны выбираться так, чтобы можно было получить всю необходимую количественную информацию, определяе-
*) В отечественной литературе принят термин СПУ |
(сетевое пла |
нирование и управление). (Прим. ред.) |
1 |
174 |
ПРИКЛАДНЫЕ ЗАДАЧИ |
ТЕОРИИ ГРАФОВ |
[ГЛ. 5 |
мую ниже, и установить все |
существенные |
отношения |
|
предшествования.) |
|
|
|
Хотя |
некоторые операции |
проекта независимы друг |
от друга, в общем случае между ними существует до
статочно |
сильная |
зависимость |
по |
времени, |
например, |
|||||
операция |
at |
д о л ж н а |
быть закончена прежде, чем может |
|||||||
быть начата операция as. Если заданы все такие |
времен |
|||||||||
ные |
зависимости, |
то |
их можно удобно представить в ви |
|||||||
де |
ориентированного |
графа, как показано на рис. 6.2. |
||||||||
К а ж д а я |
дуга графа |
соответствует |
одной |
операции, |
а |
|||||
к а ж д а я |
вершина, |
называемая |
событием, соответствует |
|||||||
некоторому |
моменту |
времени. |
В частности, |
вершина |
vx |
|||||
представляет |
собой |
начало всего |
проекта, |
a |
vs — его |
окончание. Промежуточные вершины служат для отра жения взаимосвязи операций во времени. Вершины вы
бираются и сопоставляются с дугами так, |
что для каж |
дой операции (дуги) и события (вершины) |
справедливо |
следующее основное утверждение: если операция а име
ет начальное событие в виде |
вершины о, |
Т О она не мо |
||||
жет быть начата до тех пор, |
пока все операции, закан |
|||||
чивающиеся в v, не будут |
выполнены. |
Естественно а |
||||
может начаться |
в любой другой |
момент |
после того, как |
|||
выполнены |
все |
предшествующие |
операции. |
Например, |
||
на рис. 6.2 |
операция 10 (так |
же |
как и 12) |
может быть |
||
|
|
8 |
|
|
|
|
9
Рис 6.2.
начата только после выполнения операций 5 и 7. Кос венно начало операции 10 зависит т а к ж е от моментов выполнения операций 1, 2 я 4, так как они непосредст венно определяют начало операций 5 и 7. В начале про
екта могут выполняться только операции /, 2 |
и 3. Про |
ект считается законченным после выполнения |
операций |
11, 12 и 13 (а, следовательно, всех операций |
проекта) . |
ЗАДАЧИ ТИПА ПЕРТ |
175 |
Г р а ф такого типа, представляющий процесс выпол нения операций, является основой многих методов ор ганизационного управления и, в частности, широко из вестного метода П Е Р Т и метода критического пути. Он позволяет проводить анализ различных вариантов выпол
нения |
проектов. |
|
|
|
Д л я иллюстрации |
основного |
типа |
проводимого ана |
|
лиза |
предположим, что для выполнения каждой опера |
|||
ции а |
требуется известное время |
t(a). |
|
|
Несколько операций можно, конечно, выполнить од |
||||
новременно, если ни |
одна из операций |
рассматриваемой |
группы не ограничена моментами выполнения других операций, входящих в группу. (Это произойдет в случае, если ни одна из рассматриваемых операций не входит в путь, ведущий из V\ в начальное событие дру гой операции) .
Предположим, что числа на дугах графа рис. 6.3 со
ответствуют продолжительностим |
операций. (В данном |
J |
Dg |
oj |
4 |
и? |
|
Рис. |
6.3. |
случае считается, что |
продолжительность каждой one-; |
рации известна и постоянна. На самом деле продолжи тельность операций часто меняется, и ее описывают не которым распределением вероятности, общий вид кототого известен, а оценки его параметров могут быть получены.)
Д л и н а |
(т. е. сумма |
временных |
интервалов) |
любого |
||
пути из V\ в Vi соответствует нижней границе |
времени, |
|||||
измеряемого от начала |
проекта |
до |
наступления |
события |
||
v{, после которого могут быть |
начаты операции, имею |
|||||
щие v{ |
в |
качестве начальной |
вершины. При |
расчетах |
||
каждой |
вершине удобно |
поставить |
в соответствие число |
176 ПРИКЛАДНЫЕ ЗАДАЧИ ТЕОРИИ ГРАФОВ [ГЛ. 6
[(время) |
следующим |
образом: |
|
||
|
|
Г ( о ! ) = 0 , |
|
T(v,)=max{t(P)} |
|
где |
t(P) |
обозначает |
длину |
пути |
Р и максимум берется |
по |
всем |
путям из V\ к vt. |
|
|
|
|
Заметим, что по своей природе граф, представляющий |
||||
процесс |
выполнения |
операций, |
является ациклическим. |
||
(Наличие цикла создало |
бы невозможную ситуацию, |
вкоторой ни одна из операций, входящих в цикл, не
могла |
бы |
начаться |
первой, так как ее |
начало |
зависело |
||
бы от |
выполнения |
другой |
операции |
цикла.) |
|
Поэтому |
|
можно найти покрывающее дерево с |
корнем |
в |
vu ис |
||||
пользуя метод главы 3. В результате |
мы сразу |
опреде |
|||||
лим пути |
максимальной |
длины из v\ |
к любой |
другой |
|
|
|
|
|
|
Рис. |
6.4. |
|
|
|
|
|
||
вершине. (Предполагается, |
что к а ж д а я |
вершина |
графа |
|||||||||||
достижима, по крайней |
мере, по одному |
пути.) |
|
|
||||||||||
|
Соответствующее дерево показано на рис. 6.4, про |
|||||||||||||
должительности |
операций |
для него даны |
на рис. 6.3, |
|||||||||||
а значения T(v{) |
приведены |
в |
вершинах. |
|
|
|
||||||||
|
К а к |
уже упоминалось, |
наиболее ранний |
возможный |
||||||||||
момент |
начала |
операции |
[vu |
Vj) удален, по крайней ме |
||||||||||
ре, |
на T(Vt) |
единиц |
времени |
|
от начала |
проекта. С |
дру |
|||||||
гой |
стороны, |
график |
выполнения |
проекта, |
основанный |
|||||||||
на |
T(Vi), |
является практически реализуемым . Более точ |
||||||||||||
но, |
если |
мы |
запланируем, |
что к а ж д а я |
операция |
(vh |
v}) |
|||||||
начинается в момент Т(и,) |
и |
заканчивается |
в |
момент |
||||||||||
T(x)t)-\-ti} |
(где |
Uj — длительность |
соответствующей |
опе |
||||||||||
рации), |
то ии одна |
операция |
не |
может быть |
начата |
|||||||||
раньше |
момента, определенного |
основными |
правилами, |
6,4] |
ЗАДАЧИ ТИПА ПЕРТ |
177 |
н проект в целом будет выполнен за T(va) = \3 единиц времени, что соответствует наиболее раннему возможно му моменту его окончания.
|
Упражнение 6.4. Доказать, что при предложенном способе пла |
|||||||||||
нирования |
операций |
отношение предшествования |
операций |
не |
нару |
|||||||
шается. |
|
|
|
|
|
|
|
|
|
|
|
|
|
Длиннейший |
по времени путь от начального |
события |
|||||||||
V\ до |
конечного |
v„ |
называется |
критическим |
путем. Его |
|||||||
длина |
(в |
нашем |
примере 13) соответствует кратчайше |
|||||||||
му |
времени, |
за |
которое может |
быть |
выполнен |
проект. |
||||||
Минимальное |
время |
достигается только |
в |
случае, |
если |
|||||||
к а ж д а я |
операция критического |
пути |
начинается |
сразу |
||||||||
же |
после окончания |
предшествующей. |
Вообще |
говоря, |
критический путь не является единственным. (Читатель может заметить другой критический путь в нашем при мере.) Операция называется критической, если она при надлежит одному или нескольким критическим путям. Если проект нужно выполнить за минимальное время, некоторые операции проекта остаются некритическими и существует определенная свобода в их планировании. Измерение этой свободы приводит к определению резер
ва времени |
операций. З а д а ч а нахождения |
резерва |
вре |
|
мени операций будет рассмотрена ниже. |
|
|
||
Заметим, |
что к а ж д о е событие |
должно произойти |
||
(т. е. все операции, приводящие к |
нему, |
должны |
быть |
выполнены) достаточно рано, чтобы обеспечить последо вательное выполнение всех операций некоторого пути от него до конечного события. С учетом этого всем со
бытиям, кроме |
значений |
T(vt), |
удобно сопоставить вто |
|||||
рое |
множество |
чисел (времен). |
Эти числа |
аналогичны |
||||
T(vt), |
но их измерение |
должно |
производиться |
относи |
||||
тельно конечного события, а не начального. |
|
|
||||||
Таким образом, пусть |
|
|
|
|
||||
|
X(vn)=0, |
|
X(v,)=max{t(P)} |
|
для |
1фп, |
||
где |
t(P) — д л и н а |
пути от v{ до |
vn |
и максимум |
берется |
|||
по всем возможным путям. Заметим, что в |
этом |
случае |
||||||
для |
определения |
X(vt) |
мы снова |
можем воспользовать |
ся методом главы 3. Необходимо только временно поме нять ориентацию каждой операции на обратную, найти длиннейшее покрывающее дерево с корнем va, а затем
12 p, Вас*кср. Т. Саатн
178 |
ПРИКЛАДНЫЕ ЗАДАЧИ ТЕОРИИ ГРАФОВ |
[ГЛ. 6 |
восстановить первоначальную ориентацию дуг. |
На |
рис. 6.5 показано дерево, соответствующее нашему при
меру. В вершинах графа указаны значения X{v,). |
Так |
8 |
|
Рис. 6.6.
как величины X(v{) измеряются от конца проекта, а вре мя выполнения всего проекта T(v„), то удобно связать эти времена следующим соотношением:
|
L(Vl)=T(vn)-X(vt), |
|
где |
L(v{) определяет самое позднее |
время осуществле |
ния |
события Vi, не увеличивающее |
длительности всего |
Рис. 6.6.
проекта. Н а рис. 6.6 показаны значения L(v{) для к а ж дой вершины одновременно с определенными ранее зна
чениями T(Vi). |
Величины 7/(у( ) и |
удовлетворяют |
отношению |
T(vt)^L(Vi). |
|
Упражнение 6.5. Доказать предшествующее утверждение. Кроме того, доказать, что T(vi)=L(vi) тогда и только тогда, когда принадлежит некоторому критическому пути.
Величины |
T(vt) |
и L(v{) позволяют |
определить |
ре- |
|
еерв |
времени |
при |
планировании отдельных операций |
||
.(при |
постоянном |
минимальном времени |
проекта) . |
На - |