
Сетевой график комплекса работ. Временной сетевой график.
Предположим, что нам дана упорядоченная структурная таблица комплекса работ (таблица 6.4). Связи между работами, входящие в этот комплекс, можно изобразить графически, в виде так называемого сетевого графика (или графа).
Э
Таблица 6.4 Работа Опирается
на работы a1 - a2 - a3 - a4 a1,
a2 a5 a2,
a3 a6 a4 a7 a5,
a6 a8 a3,
a5,
a6 a9 a7 a10 a5,
a8
Из узла А1,2 исходит стрелка а4, изображающая работу а4, опирающаяся на работы а1, а2; в конце стрелки стоит узел А4, означающий выполнение работы а4, и т. д. Завершающий узел А означает конец всего комплекса работ. На графе опущены связи, логически вытекающие из других; например, работа а8 в табл. 6.4 опирается на работы а3, а5, а6; на графе она показана опирающейся только на работы а5, а6, т. к. сама работа а5 опирается на а3 и без её выполнения не может быть начата.
A4
a4
a6
A1
A1, 2
A6
a1
A8
A10
a10
a8
A0
A2
a2
A5, 6
A
a3
a7
A7
A9
a9
A3
A2, 3
a5
A5
Р
a1
Как уже было сказано, существуют разные формы сетевых графиков, например, узлами обозначаются работы, а стрелками – логические связи между ними (структурную таблицу 6.4 можно изобразить графически по этому способу рисунком 6.2).
a1
a4
a6
a8
a10
a2
a3
a5
a7
A9
Рис. 6.2.
Таблица 6.5 № n/n
Работа аi Опирается
на работы Время
ti 1 a1 - 10 2 a2 - 5 3 a3 - 15 4 a4 a1,
a2 18 5 a5 a2,
a3 19 6 a6 a4 18 7 a7 a5,
a6 8 8 a8 a5,
a6 25 9 a9 a7 30 10 a10 a8 8
Пусть задана структурная таблица комплекса работ, в которой поставлены времена выполнения каждой работы: t1, t2,…. Эти значения времен выполнения отдельных работ будем предполагать не случайными, а известными заранее. Получится таблица 6.5, в которой структурные связи – те же, что в табл. 6.4 и на графиках рис. 6.1, 6.2 (устранены только лишние связи), а в правом столбце указаны времена выполнения отдельных работ, выраженные в любых единицах времени (часы, недели, месяцы). Такую таблицу будем называть структурно- временной.
Временную структуру комплекса работ, вместе с логической структурой, можно изобразить на одном и том же графике, который мы будем называть временным сетевым графиком. Будем его строить следующим образом. График ориентируется вдоль оси времени 0t, на который в каком-то масштабе откладываются времена выполнения работ. Как и на графике рис. 6.1, стрелками изображаются работы, но длина каждой стрелки не произвольна, а такова, что её проекция на ось абсцисс 0t равна времени выполнения данной работы. Логические связи между работами опять обозначены пунктирными стрелками, не означающими никакой реальной работы («фиктивные» работы).
A8
A2
a8
a10
a5
A3
A5
A6
a2
A10
a3
A0
t 10 20 30 40 50 70 60 80
a7
a6
a1
A7
A4
a9
A1
a4
A9
Рис .6.3
При построении временного сетевого графика расположение узлов по вертикали (по оси ординат) берется произвольным, абсцисса же каждого узла равна времени окончания соответствующей работы. Длина каждой стрелки считается от центра до центра кружка. Проследим, как строится временной сетевой график на рисунке 6.3. Начинаем его с узла А0, помещенного в начале координат.
Из этого узла исходит три стрелки: a1, a2 и a3, проекции которых на ось 0t равны времени выполнения соответствующих работ: t1 = 10, t2 = 5 и t3 = 15. Работа a4 опирается на работы a1 и a2; из них работа a2 кончается в момент t2 = 5, а работа a1 – в момент t1 = 10; значит, работа a4 может начаться не раньше, чем в момент t1 = 10, когда окончена a1. Начнём стрелку а4 из узла А1, а узел А2 соединим с А1 пунктирной стрелкой. Проекция стрелки а4 равна t4 = 18, следовательно абсцисса узла А4, в котором эта стрелка кончается, должна быть Т4 = t1 + t4 =28. Стрелка а5 опирающаяся на а2 и а3, должна начаться в узле А3, имеющем наибольшую абсциссу из t2 = 5 и t3 = 15; узел А2 соединяем с А3 пунктирной стрелкой. Узел А5, который заканчивается стрелкой а5 имеет абсциссу Т5 = t3 + t5 = 34. Стрелка а6 начинается в узле А4 и кончается в узле А6 с абсциссой Т6 = Т4 + t6 = 28 + 18 = 46. Стрелка а7, опирающаяся на а5, а6, должна начинаться от узла А6, имеющего, по сравнению с А5, большую абсциссу; из А5 в А6 направляем пунктирную стрелку. Стрелка а7 кончается в узле А7 с абсциссой Т7 = 46 + 8 = 54. Стрелка а8 начинается в том же узле А6 с абсциссой Т6 = 46 и кончается в узле А8 с абсциссой Т8 = 46 + 25 = 71. Стрелка а9 с проекцией t9 = 30 начинается в узле А7 и кончается в узле А9 с абсциссой Т9 = 54 + 30 = 84. Стрелка а10, опирающаяся на а8, начинается в узле А8 и кончается в узле А10 с абсциссой Т10 = 71 + 8 = 79.
Так как работа а9 завершается последней, то узел А9 = А означает окончание всего комплекса работ; отметим этот узел жирным кружком и соединим с ним пунктирной стрелкой узел А10 – окончание предыдущей работы а10, на которую, кроме конца работ, ничто не опирается. Таким образом, временной сетевой график комплекса работ построен.
Время Т = 84 от начального узла А0 до завершающего А = А9 представляет собой минимальное время, за которое может быть завершён комплекс работ.
Обратим внимание на следующее обстоятельство: время Т представляет собой сумму времён исполнения не всех работ, а только некоторых из них:
Т = t1 + t4 + t6 + t7 + t9 =10 + 18 + 18 + 8 + 30 = 84.
Работы а1, а4, а6, а7, а9, из длительностей которых составлено время Т, называются критическими работами, а цепочка соответствующих им стрелок на сетевом графике – критическим путём (на рис. 6.3 показан двойными стрелками).
Особенность критических работ состоит в следующем: для того, чтобы было соблюдено минимальное время выполнения комплекса, каждая и них должна начинаться точно в момент, когда закончена последняя из работ, на которые она опирается, и продолжаться не более того времени, которое ей отведено по плану; малейшее запоздание в выполнении каждой из критических работ приводит к соответствующей задержке выполнения плана в целом.
Таким образом, критический путь на сетевом графике – это совокупность наиболее уязвимых, «слабых мест» плана, которые должны укладываться во временной план с наибольшей чёткостью. Что касается остальных, «некритических» работ (в нашем случае это а2, а3, а5, а8, а10), то каждая из этих работ имеет известные временные резервы и может быть закончена с некоторым опозданием без того, чтобы это отразилось на сроке выполнения комплекса в целом. Резервы, соответствующие некритическим работам, легко могут быть определены по сетевому графику.
Назовём «некритической дугой» совокупность некритических работ и узлов, начинающуюся и кончающуюся на критическом пути (принимая во внимание и пунктирные стрелки). Таких дуг на рисунке 6.3 четыре:
А0 – а2 – А2 – А1,
А0 – а3 – А3 – а5 – А5 – А6,
А0 – а2 – А2 – А3 – а5 – А5 – А6,
А6 – а8 – А8 – а10 – А10 – А9.
На первой из этих дуг лежит одна некритическая работа а2; на второй – две некритические работы а3, а5; на третьей – две некритические работы а2, а5; на четвёртой – две некритические работы а8, а10.
Каждой некритической дуге соответствует определённый временной резерв, который может быть произвольным образом распределён между некритическими работами, лежащими на данной дуге. Этот резерв равен разности между суммой времён критических работ, лежащих на критическом пути, замыкающем дугу, и некритических, лежащих на самой дуге. Например, на дуге А0 – а2 – А2 – А1 лежит только одна некритическая работа а2; на замыкающем её отрезке критического пути А0 – а1 – А1 – одна критическая работа а1; резерв времени, приходящийся на работу а2 равен R2 = t1 – t2 = 10 – 5 = 5. Следовательно, выполнение работы а2 может быть, без ущерба для общего срока, задержано на 5 единиц времени.
На второй некритической дуге А0 – а3 – А3 – а5 – А5 – А6 лежат две некритические работы а3, а5; на замыкающем участке критического пути – три критические работы а1, а4, а6. Значит общий резерв времени, приходящийся на работы а3, а5 равен:
R3, 5 = t1 + t4 + t6 – (t3 + t5) = 10 + 18 + 18 – (15 + 19) = 12.
Резерв R3, 5 можно распределить между работами а3, а5 любым образом.
На третьей некритической дуге резерв равен:
R2, 5 = t1 + t4 + t6 – (t2 + t5) = 10 + 18 + 18 – (5 + 19) = 22.
На четвёртой некритической дуге имеется резерв:
R8, 10 = t7 + t9 – (t8 + t10) = 8 + 30 – (25 + 8) = 5, который может быть произвольно распределён между работами а8, а10.
Знание критического пути на сетевом графике полезно в двух отношениях: во-первых, оно позволяет выделить из всего комплекса работ совокупность наиболее «угрожаемых», непрерывно наблюдать за ними, и, в случае надобности, форсировать их выполнение; во-вторых, оно даёт возможность в принципе ускорить выполнение комплекса работ за счёт привлечения резервов, скрытых в некритических работах, если удаётся за счёт их «безвредного» замедления перебросить часть сил и средств на более важные, критические работы.
Заметим, что на сетевом графике может быть не один критический путь, а два и более; естественно сумма времён критических работ на каждом из них должна быть одна и та же.