Изменения

Перейти к: навигация, поиск

1precripi1Lmax

49 байт добавлено, 14:08, 8 июня 2015
Нет описания правки
==Постановка задачи==
Рассмотрим задачу:
{{Задача
|definition = Дано <tex>n</tex> работ и один станок. Для каждой работы известно её время появления <tex>r_{i}</tex>. Время выполнения всех работ <tex>p_i</tex> равно <tex>1</tex>. Работа может начаться только после выполнения некоторых других работ, эта зависимость дана в виде ациклического графа. Необходимо составить такое расписание, чтобы значение <tex>L_{max} = max_\max\limits_{i=1}^n (C_i - d_i)</tex> было минимальным.
}}
==Доказательство==
[[Файл:1precripi1Lmax.png|500px|thumb|right|Пояснение]]
Пусть существует оптимальное расписание <tex> S^* </tex>. В этом расписании работа выполняется тогда, когда она появилась, либо когда закончилась другая работа.
Рассмотрим такое расписание <tex>S^*</tex>, которое как можно дольше совпадает с расписанием S, построенным алгоритмом. Пусть <tex> t~-</tex> первый момент времени, когда в расписании <tex>S</tex> начинает выполняться работа <tex>i</tex>, а в расписании <tex>S^*</tex> работа <tex>j</tex> (причем <tex> i \ne j </tex>). Мы знаем, что <tex> r_i, r_j \leqslant t </tex>, а значит <tex> d_i \leqslant d_j </tex> (поскольку при построении мы выбираем минимальное доступное <tex> d_k </tex>). Пусть <tex> i_1, i_2, ...\ldots, i_l~-</tex> все работы, которые находятся в расписании <tex>S^*</tex> между работами <tex>j</tex> и <tex>i</tex> и являются наследниками работы <tex>j</tex>. Кроме того, предположим, что эти работы упорядочены по времени начала выполнения. Теперь, если мы поставим работу <tex>i_l</tex> вместо <tex>i, i_{l-1}</tex> вместо <tex>i_{l}, ...\ldots, j</tex> вместо <tex>i_1, i</tex> вместо <tex>j</tex>, то мы снова получим возможное оптимальное расписание <tex> S' </tex>. так как <tex> d_i \leqslant d_j \leqslant d_v </tex>, где <tex> v \in {i_1, i_2, ... \ldots, i_l} </tex>. Последнее неравенство имеет место быть, поскольку все работы <tex>i_v</tex> являются наследниками работы <tex>j</tex>. [[Файл:1precripi1Lmax.png|400px|thumb|center|Составление оптимального расписания <tex> S^* </tex>]] 
==Источники информации==
* Peter Brucker. «Scheduling Algorithms» {{---}} «Springer», 2006 г. {{---}} 379 84 стр. {{---}} ISBN 978-3-540-69515-8
[[Категория: Алгоритмы и структуры данных]]
[[Категория: Теория расписаний]]
Анонимный участник

Навигация