1rjpjpsumwjcjиsumtj — различия между версиями
Romanosov (обсуждение | вклад) м (→Корректность алгоритма) |
Romanosov (обсуждение | вклад) м (→Источники информации) |
||
Строка 53: | Строка 53: | ||
==Источники информации== | ==Источники информации== | ||
+ | P. Brucker. Scheduling Algorithms (2006), 5th edition, стр. 98 - 104 |
Версия 23:47, 6 июня 2016
Задача: |
Дано | работ и станок. Для каждой работы известны время появления , вес и дедлайн . Время выполнения всех работ равно . Требуется выполнить все работы так, чтобы значение , где — время окончания работы, было минимальным.
Задача: |
Дано | работ и станок. Для каждой работы известны время появления , вес и дедлайн . Время выполнения всех работ равно . Требуется выполнить все работы так, чтобы значение — суммарной медлительности работы ( ) — было минимальным.
Содержание
Предисловие
Аналогично задаче , данные задачи решаются при помощи динамического программирования.
Вместо критериев оптимизации
и возьмём более общую для них функцию вида , где функции обладают следующими свойствами:- не убывает для всех ;
- не убывает для всех при .
Функции
и удовлетворяют данным условиям, если отсортировать работы так, что и .Алгоритм
Отсортировать работы так, чтобыудовлетворяла условиям неубывания; for s, e T : s e (s, e) = 0; for k = 1..n for s, e T : s e if else , где return
Время работы
Корректность алгоритма
Ниже приведена теорема, показывающая, что возвращаемое алгоритмом значение
равно .Теорема: |
Для любого и для любого , выполняется: . |
Доказательство: |
PROOF |
Другие задачи
Источники информации
P. Brucker. Scheduling Algorithms (2006), 5th edition, стр. 98 - 104