PpmtnriLmax
Версия от 23:46, 9 июня 2012; Proshev (обсуждение | вклад)
Постановка задачи
- Имеется однородных машин, работающих параллельно.
- Есть работ, каждое имеет своё время появления и время окончания .
- Работа может быть прервана и продолжена позже.
Необходимо составить такое расписание, чтобы значение
было минимальным.Решение
Сведем эту задачу к поиску максимального потока в сети, построенной указанным ниже образом.
Пусть
- упорядоченная последовательность и . Определим интервалы с длиной для всех .Работам
сопоставим свой тип вершин, а интервалам свой. Добавим две фиктивные вершины и . Вершина соединена с вершинами ребрами с пропускной способностью , вершина соединена с вершинами ребрами с пропускной способностью . Ребро между вершиной и вершиной существует, если . Пропускная способность этого ребра - .Нетрудно понять, что расписание существует, если максимальный поток через эту сеть равен
.Если это так, то поток
на дуге соответствует тому, что работа будет выполняться во временном интервале , и будет справедливо следующее:- для всех ребер
Исходя из этого, расписание строится выполнением работы
с временем выполнения в интервале .