317
правок
Изменения
Нет описания правки
|definition=Рассмотрим задачу на нахождение расписания:
# У нас есть несколько станков, работающих параллельно. У станков могут быть разные скорости выполнения работ.
# Есть несколько заданий, каждое из которых имеет определенный порядок, который указан в направленном из корней в лист [[Классификация задач#Характеристики работ|intree-дерева]].
# Любая работа на любом станке выполняется единицу времени.
Требуется минимизировать максимальное опоздание <tex>L_{max} = \max\limits_i \{C_i - d_i\}</tex>.
=== Идея ===
Все вершины работы хранятся в дереве (англ. качестве вершин [[Классификация задач#Характеристики работ|intree), которое имеет несколько корней и один лист. Работы хранятся в дереве-дерева]], состоящем из <tex>n</tex> вершин с фиктивной нулевой работой, которая является родителем тех вершин, у которых изначально его не былонескольких корней и одного листа. В intree-дереве у одной вершины может быть два и более родителей.
Решение задачи состоит из двух шагов: на первом шаге мы меняем сроки выполнения работ в соответствии с их очередностью.
=== Первый шаг ===