Г. Алгоритм расчета временных параметров непосредственно на сетевой модели

Все основные параметры модели ПДВ могут быть вычислены по формулам (6.10) — (6.13) и (6.17) —(6.19), если известны ранние и поздние сроки наступления всех событий — и . Поэтому расчет модели сводится по существу к определению и для всех событий i. Алгоритм решения этой задачи будем называть в дальнейшем основным алгоритмом, который может быть представлен определенной последовательностью операций.

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

Последовательность операций:
1) выделить в каждом кружке, обозначающем событие, секторы для фиксации его номера и результатов вычислений (рис. 6.15);


Рис. 6.15. Пример расчета временных параметров сетевой модели: в левом секторе каждого события — ранний срок его свершения , в правом — поздний срок. В верхнем секторе обозначен номер события. Числа над стрелками — продолжительности работ; под стрелками в прямоугольнике: слева — полный резерв времени соответствующей работы; справа — свободный резерв r Жирные стрелки — критический путь

2)       принять для исходного события = Т0, т. е. заданному сроку наступления исходного события. На рис. 6.15 принято Т0 = 3, что записано в левом секторе исходного нулевого события;
3).      отметить меткой все работы, выходящие из исходного события (в примере это работы 01 и 02);
4)       найти событие j, для которого все входящие работы отмечены, a Tjp не найдено (в примере это события 1 и 2);
5)       вычислить Tjp по формуле

где B(j)— множество событий i, соединенных с j работами ij. В нашем примере = 3+10=13; =3 + 8=11;
6)       отметить меткой все работы, выходящие из события j (в нашем примере из событий 1 и 2) и вычислить по формуле (6.20) ранние сроки свершения событий, пока не дойдем до завершающего события. Так, =max (13 + 8,11 +14) = 25.

Аналогично найдены остальные ранние сроки;
7)       принять поздний срок для завершающего события iω

Пусть в нашем примере директивный срок задан — Тдир=32 (запишем это число в правом секторе завершающего события);
8)       отметить второй меткой все работы, входящие в завершающее событие iω. В примере это работы 3—5 и 4—5;
9)       найти событие i, для которого все выходящие работы отмечены второй меткой, а еще не найдено. В примере это события 3 и 4;
10)     вычислить по формуле

где C(i) — множество событий j, соединенных с i работами ij.

В примере  = 20; = 28;
11) отметить второй меткой все работы, входящие в событие (в примере для события 3 работы 1—3 и 2—3, для 4 — работы 2—4), и вычислить поздние сроки свершения соответствующих событий, пока не дойдем до исходного события. Например, для события 2 = min {20—14, 28—6} = 6. Аналогично найдены остальные поздние сроки.

На втором этапе определяют полные и свободные резервы времени всех работ по формулам (6.18) и (6.19).

В нашем примере по работе 3—5 =32—25—12=—5; =37—25—12= —0.

Аналогично производится подсчет по остальным работам, а результаты записываются в смежных прямоугольниках под стрелками, обозначающими работы. Результаты расчета служат основой для форсирования работ, имеющих отрицательные резервы. В данном примере критический путь прошел по работам 0—2, 2—3 и 3—5, имеющим наименьший полный резерв =—5.

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