
Алгоритм задачи сетевого планирования.
Н
Таблица 6.6 № n/n
Работа аi Опирается
на работы Время
ti 1 a1 - t1 2 a2 - t2 3 a3 - t3 4 a4 a1,
a2 t4 5 a5 a1,
a3,
a4 t5 6 a6 a2,
a3 t6 7 a7 а4 t7 8 a8 a4,
a5 t8 9 a9 a4,
a5,
a6 t9 10 a10 a8,
a9 t10
Рассмотрим один из возможных алгоритмов, которые могут быть применены для этой цели. Прежде всего выполняется упорядочение структурной таблицы, для чего работы подразделяются на ранги, по признаку числа и рангов работ, на которые они опираются.
Пусть упорядочение комплекса работ выполнено, и структурно- временная таблица представлена, например, в виде таблицы 6.6.
Запишем в виде математических формул систему связей, отражённую в структурно- временной таблице комплекса. Обозначим i – минимально возможный срок начала работы аi (время отсчитывается от начала процесса), а Тi – минимально возможный срок её окончания.
О
(6.1)
Ti = i + ti ,
где ti – время выполнения работы аi.
П
(6.2)
i = max (Tj, Tl, Tk) .
Применяя такие
формулы ко всем работам комплекса по
очереди, мы найдём все моменты окончания
работ Ti
и, в конце концов, минимальный срок
окончания всего комплекса работ T.
Проделаем всё это для таблицы 6.6. Вычислим
величины
i
и Tj
для всех работ комплекса.
Для работ первого ранга a1, a2, a3 имеем:
Работа a4 опирается на работы а1, а2; она может начаться в момент τ4, когда окончится наиболее поздно кончающаяся из работ а1, а2:
(6.3)
Момент окончания работы а4:
T4=τ4+t4. (6.4)
Аналогично, для всех остальных работ:
(6.5)
Т. о. найдены моменты начала τi и окончания Тi всех работ комплекса. Время окончания всего комплекса равно максимальному из всех времён окончания:
(6.6)
Чтобы найти критические работы и критический путь, необходимо сделать следующее:
Найти работу аi, для которой время окончания Тi=T максимально; эта работа, конечно, будет критической.
Найти, используя (6.5), формулу, которая определяет момент начала этой работы τi. Величина τi представлена в виде максимума каких-то моментов Tj, Tl, Tk,…; нужно найти тот из них, на котором достигается максимум (если таких моментов несколько, взять любой из них). Та работа аm, при которой достигается этот максимум, будет второй от конца работой на критическом пути.
Далее точно также определяется третья, четвёртая и т. д. работы на критическом пути.
Т. о., критической будет работа с самым поздним сроком окончания и все работы, на времени окончания которых достигается максимум в выражении, определяющем срок начала очередной критической работы. Конечно, максимум в каких-нибудь из формул (6.5) может достигаться не на одной, а на нескольких работах; соответственно на каждом шаге мы можем получить не один, а несколько критических путей.