Глава 9 Алгоритмическое обеспечение модели планирования и

advertisement
Глава 9
АЛГОРИТМИЧЕСКОЕ ОБЕСПЕЧЕНИЕ МОДЕЛИ
ПЛАНИРОВАНИЯ И ПРИНЯТИЯ РЕШЕНИЙ
9.1 Общая схема реализации алгоритмического обеспечения иерархической модели планирования в сложных системах
В основу планирования функционирования сложных систем положена
трехуровневая модель планирования, описанная в параграфе 8.5. Функциональная схема ее реализации представлена ниже на рисунке 9.2.
Рассмотрим задачу, поставленную в главе 8, и соответствующую ей иерархическую модель планирования. Алгоритмическое обеспечение модели состоит из трех
основных блоков, соответствующих трем уровням общей схемы планирования [56].
Блок 1
1. Построение на основе портфеля заказов входной информационной модели
– графа заданий G;
2. Построение агрегированного графа взаимосвязи работ G';
3. Определение критических путей заданий;
4. Определение общих вершин на критических путях и построение графа на
критических путях заданий GК – агрегированной модели первого уровня (с
очевидным обобщением на 5 основных критериев оптимальности и 26
комбинированных, см. п. 9.2.2);
5. Построение для каждого из критериев 1–7 (п. 8.5, с обобщением на 31 критерий) аппроксимирующей задачи МВМ. Решение задачи МВМ, в результате которой формируется приоритетно-упорядоченная последовательность
выполнения агрегированных работ ОПТ, содержащая вершины графа GК.
Блок 2
6. Предварительное распределение агрегированных работ последовательности ОПТ по мультиресурсам;
619
Глава 9
7. Переопределение набора общих вершин согласно фактической информации о распределении; если общие вершины не изменились, переход на шаг
9, иначе на шаг 8.
8. Формирование нового графа GН на критических путях заданий в связи с
изменением набора общих вершин. Повторное решение задачи МВМ.
9. Дополнение последовательности ОПТ вершинами, не лежащими на критических путях заданий (последовательность *).
10. Распределение агрегированных работ последовательности * для обслуживания их множеством мультиресурсов с привязкой к плановому периоду
(согласованное планирование).
11. Блок принятия решений: генерация серии возможных допустимых планов
по разным критериям оптимальности в результате многократного выполнения шагов 1–10 и выбор наилучшего плана для передачи на Блок 3. Если
план, удовлетворяющий поставленным требованиям, не получен, информация передается на Блок 1 для коррекции модели.
Блок 3
12. Дезагрезация мультиресурсов и агрегированных работ, формирование согласованного плана выполнения работ для каждого ресурса с учетом выбранного критерия оптимизации.
Входная информационная модель представляет собой базы данных с информацией о входящих в портфель заказов заданиях (комплексах взаимосвязанных работ), их директивных сроках и весах, характеризующих важность заданий. На каждом комплексе взаимосвязанных работ задается частичная упорядоченность, определяемая технологией выполнения заданий. Определяется
длительность выполнения работ с привязкой к ресурсам. Задается информация
о мультиресурсах и календаре рабочих дней. Преобразование входной информации в информационную модель заданного вида и ее проверка осуществляются на шаге 1.
620
Алгоритмическое обеспечение трехуровневой иерархической модели…
На шаге 2 выполняется процедура агрегации для уменьшения размерности
начального графа. На этом этапе решаются следующие задачи:
– выбор приема агрегирования;
– определение уровня агрегации работ и ресурсов;
– формирование структуры агрегированных технологических моделей;
– формирование агрегированных нормативов.
При построении модели технологической агрегации выполняется агрегация до уровня мультиресурсов (устойчивая группа совместно работающих ресурсов) и построение агрегированных работ. Входной ацикличный ориентированный граф представляется в виде списка технологических операций (перечня работ) и перечня их взаимосвязей. Технологическая агрегация выполняет
объединение в один элемент – агрегированную работу – смежных операций,
проводимых в одном и том же мультиресурсе по одному заданию. Длительность
выполнения агрегированной работы i-м мультиресурсом определяется ее критическим путем в данном мультиресурсе (формула (9.1), п. 9.2.1).
В результате выполнения шагов 3 и 4 строится граф на критических путях
выполнения заданий. Некоторые агрегированные работы, проводимые в мультиресурсах, которые требуют переналадки (подготовительных работ) при
выполнении работ с различающимися характеристиками, объединяются по
описанным ниже правилам в общие агрегированные работы, если при этом не
требуется наладка мультиресурса при переходе от одной работы к другой. Это
отображено на графе связности общими вершинами. В этом случае наладка
требуется только в начале расписания и каждый раз, когда мультиресурс переключается от выполнения работ в «общей вершине» к выполнению других агрегированных работ.
Для определения очередности назначения заданий на выполнение на построенном графе на критических путях заданий решается задача минимизации
суммарного взвешенного момента окончания выполнения работ одним прибором (МВМ) при условии, что веса всех вершин, кроме конечных, равны нулю.
Результатом решения этой задачи является приоритетно-упорядоченная последовательность выполнения агрегированных работ ОПТ (шаг 5). С этой целью
621
Глава 9
для каждого из критериев 1–7 (п. 8.5, с обобщением на 31 критерий) строится
аппроксимирующая задача МВМ, в которой длительности и веса работ определяются длительностями и весами агрегированных работ в графе на критических путях. Для решения задачи МВМ при условии, что веса всех вершин,
кроме конечных, равны нулю, разработан эвристический алгоритм (п. 9.3) на
основе ПДС-алгоритма решения задачи минимизации суммарного взвешенного момента окончания выполнения работ одним прибором при отношении порядка, заданном ориентированным ацикличным графом (глава 2).
Полученная в результате решения аппроксимирующей задачи МВМ приоритетно-упорядоченная последовательность ОПТ является основной информацией при реализации согласованного планирования функционирования системы. Выполняется двукратное распределение агрегированных работ по мультиресурсам. При первом из них (шаг 6) по мультиресурсам в порядке, заданном
последовательностью ОПТ, распределяются все агрегированные работы, лежащие на критических путях заданий. При этом определяются моменты начала
выполнения агрегированных работ и привязка их к конкретным мультиресурсам. Общие вершины при распределении представляются в виде последовательности агрегированных работ, входящих в их состав, упорядоченной в соответствии с приоритетами заданий, которым они принадлежат.
Первое распределение служит для определения фактической информации
об объединении общих вершин на стадии распределения, т. е. уточнения состава общих вершин (шаг 7). Те вершины, для которых при распределении
нарушены правила объединения, исключаются из состава «общих вершин», и
наоборот, вершины, для которых в результате распределения выполняются
правила объединения, дополнительно включаются в новый состав «общих
вершин».
Второе распределение осуществляется на уточненном графе с новым составом общих вершин и может решаться либо на графе на критических путях
(шаги 8 и 10) – для определения состава портфеля заказов, либо после дополнения этого графа остальными вершинами, не лежащими на критических путях (шаги 8, 9, 10) – для реализации согласованного планирования. В этом слу622
Алгоритмическое обеспечение трехуровневой иерархической модели…
чае агрегированные работы, не лежащие на критических путях, также могут
объединяться в общие агрегированные работы, если они выполняются в одном
мультиресурсе и моменты начала их выполнения отличаются на величину,
меньшую, чем время переналадки в мультиресурсе.
На шаге 11 в блоке принятия решений (п. 9.5) в результате многократного
выполнения шагов 1–10 генерируется серия возможных допустимых планов,
различающихся конкретным видом критерия, исходными данными и технологией реализации. Осуществляется обоснованный выбор плана выполнения заданий из множества допустимых в условиях неопределенности на основе построения дерева иерархий, что является эффективным способом решения поставленной задачи. В результате выбирается один план, передающийся на шаг
12 для реализации. Если же план, удовлетворяющий поставленным требованиям, не получен, информационная модель первого уровня подвергается корректировке (могут исключаться или добавляться новые задания, приобретаться
новое оборудование, изменяться технология выполнения работ и т.п.) и выполняется переход на шаг 2.
На шаге 12 выполняется дезагрезация мультиресурсов и агрегированных работ и формирование согласованного плана выполнения работ для каждого ресурса с учетом выбранного критерия оптимизации (точное планирование). На
этом уровне решаются задачи как для одного, так и для параллельных станков
в случае независимых или взаимосвязанных заданий по критериям 1–7 с
обобщением на 31 критерий.
Таким образом, в процессе решения задачи планирования на основе иерархической модели осуществляется стратегия поиска глобального оптимума, в
отличие от существующих методов, основанных на эвристических правилах,
что позволяет получить эффективные решения.
623
Глава 9
9.2 Общая методология планирования в сложных системах
9.2.1 Обоснование ключевых решений, принятых при разработке алгоритмического обеспечения иерархической модели планирования в
сложных системах
1. Построение агрегированной модели.
В главе 8 было показано и обосновано, что при решении задач планирования в системах с сетевым представлением технологических процессов логично
использовать трехуровневую взаимосвязанную модель планирования, которая с
достаточной детализацией позволяет описать планируемые производственные
процессы.
В соответствии с исходной постановкой задачи (п. 8.5) на основе детальной
информации, связанной с заданиями, ресурсами и технологией производства, на
первом уровне трехуровневой модели планирования строится агрегированная модель с помощью объединения отдельных ресурсов и операций в бóльшие единицы.
Рассмотрим более подробно построение агрегированной модели.
Агрегация – это процесс, обеспечивающий соответствие между моделями
задач планирования производства и составления расписаний. Планирование
устанавливает цели, а также ресурсы и временные ограничения для составления расписаний, а от составления расписания зависит развертывание плана в
детальные назначения ресурсов и последовательности операций. Агрегация
уменьшает трудоемкость планирования при принятии решений по потоку материалов и использованию ресурсов на более длинном горизонте планирования, в отличие от точного планирования, которое обычно реализуется на малых отрезках времени.
При агрегации необходимо учитывать следующие требования:
– удовлетворение временных ограничений (директивных сроков, ограничений мощности ресурсов и ограничений предшествования при
выполнении операций);
– планы производства должны разворачиваться в осуществимые расписания;
624
Алгоритмическое обеспечение трехуровневой иерархической модели…
– задачи планирования на основе агрегации должны иметь размеры и
трудоемкость, позволяющие решать их эффективно.
В качестве агрегированных элементов модели планирования используются
агрегированные работы и агрегированные ресурсы. Агрегирование ресурсов в
мультиресурсы заключается в объединении технологически однородных групп
рабочих мест, групп однотипного оборудования, однопрофильных подразделений. Агрегированная работа – это совокупность работ, выполняемых в одном мультиресурсе в рамках одного захода в мультиресурс.
На основе агрегированной информации для каждого задания (комплекса
взаимосвязанных работ) строится агрегированный граф Gi, i  1, n . Вершины графа соответствуют полученным вследствие агрегации работам, входящих в i-е
задание. Отношение порядка выполнения работ, входящих в состав агрегированных работ, сохраняется, что однозначно позволяет по согласованному плану
второго уровня реализовать точное планирование. Каждая агрегированная работа может начаться только по завершению предшествующей ей по графу связности (если она существует), в состав которой входит хотя бы одна работа, связанная отношением порядка хотя бы с одной работой рассматриваемой агрегированной работы.
Длительность выполнения агрегированной работы мультиресурсом однозначно определяется ее критическим путем в данном мультиресурсе, который
строится с помощью стандартных процедур. Например, для случая, когда в
мультиресурсе с однотипным оборудованием выполняется некоторое количество в общем случае связных работ, составляющих агрегированную работу,
формальная модель критического пути определяется последовательностью
множеств работ p типов. Множество работ j-го типа выполняется после множества работ (j–1)-го типа, j  2, p . Множество работ j-го типа состоит из n j независимых работ. Тогда l – длительность агрегированной работы k-й агрегированной работы – рассчитывается по формуле
p
l jn j
j 1
m
l
,
(9.1)
625
Глава 9
где l j – длительность выполнения работы j-го типа, m – количество однотипных рабочих мест мультиресурса.
Конечные агрегированные работы в графе Gi соответствуют выполненным
заданиям. Весовые коэффициенты всех вершин, кроме конечных, равны нулю.
Веса конечных вершин соответствуют весу выполненных заданий. Конкретные значения весов зависят от типа функционала и способа построения задачи
МВМ (п. 9.2.2).
В свою очередь, для каждого построенного агрегированного графа Gi строится критический путь, определяющий минимальное время выполнения комплекса агрегированных работ Ji, i  1, n , составлящих задание J i . Длительность
критического пути каждого задания Ji, i  1, n , определяется суммой длительностей выполнения агрегированных работ, лежащих на его критическом пути.
Завершающим этапом агрегации является построение агрегированной модели, в которой задача планирования сводится к задаче календарного планирования для одного станка. На основе критических путей заданий строится граф,
называемый далее графом на критических путях. Вершины полученного ориентированного ацикличного графа – агрегированные работы, лежащие на критических путях заданий. Дуги отражают связи между агрегированными работами, которые выполняются в соответствующих мультиресурсах, регламентирующие технологию выполнения заданий. Конечные вершины соответствуют
выполненным заданиям.
Некоторые агрегированные работы, принадлежашие критическим путям различных заданий и выполняемые в одном мультиресурсе, объединяются в общие
агрегированные работы так, чтобы не требовалась наладка для работы, если она
принадлежит той же вершине, что и агрегированная работа, выполненная перед
ней. На графе связности это отображено общими вершинами. При объединении
агрегированных работ в «общие вершины» исключается время переналадки для
объединяемых работ, которое в отдельных случаях может существенно превышать
длительность выполнения работ. Если объединение в «общие вершины» не реализуется, то при выполнении каждой агрегированной работы необходимо учитывать
626
Алгоритмическое обеспечение трехуровневой иерархической модели…
время переналадки, что существенно увеличит время прохождения заданий в системе.
Веса всех вершин построенного графа на критических путях заданий равны нулю, веса конечных вершин равны весам выполненных заданий. Длительность выполнения «общей вершины» равна сумме длительностей выполнения
входящих в ее состав агрегированных работ.
Необходимо для каждого из критериев 1–7 (пять базовых и два комбинированных, с обобщением на 31 критерий, рассматривая все возможные комбинации из пяти основных критериев) решить аппроксимирующую задачу МВМ
и построить последовательность выполнения агрегированных работ, оптимальную по критерию минимизации суммарного взвешенного момента окончания выполнения агрегированных работ, соответствующую требованиям pупорядоченности.
«Общие вершины», включающие большое количество агрегированных работ, с одной стороны, имеют преимущество эффективного использования
мультиресурса, так как число наладок существенно уменьшается. С другой
стороны, выполнение такой «общей вершины» может задержать выполнение
другой агрегированной работы, не принадлежащей «общей вершине».
Разработаны эвристические правила построения «общих вершин», учитывающие критерии оптимальности, приоритеты заданий*, которым принадлежат объединяемые агрегированные работы, директивные сроки и прогнозируемое время
поступления агрегированной работы на выполнение в данный мультиресурс
(определяемое на основе директивного срока задания и его критического пути). Эти правила основываются на том, что одним из основных критериев планирования является максимальное приближение длительности прохождения каждого
задания в системе к длительности его критического пути и на общем свойстве исследуемых функционалов 1–7 (для реализации эвристической стратегии достижения оптимального значения функционала в первую очередь назначать на выполне-
*
Приоритет задания определяется отношением веса задания к длине его критического
пути.
627
Глава 9
ние задание, имеющее высший приоритет, см. п. 9.2.2). С этой целью для каждого
из критериев оптимальности строится аппроксимирующая задача МВМ, в результате решения которой формируется приоритетно-упорядоченная последовательность агрегированных работ ОПТ, определяющая очередность их выполнения.
Следовательно, целесообразно объединять в «общие вершины» агрегированные
работы, принадлежащие заданиям, имеющим близкие по значению приоритеты.
Однако в случае существенных длительностей переналадок в «общие вершины»
могут быть объединены агрегированные работы, имеющие различные приоритеты, так как вследствие сокращения переналадок, которые изначально включены в длительность выполнения работ, при их объединении сокращаются
критические пути объединяемых заданий.
Общим требованием для всех рассматриваемых функционалов является также
сопоставимость моментов начала выполнения объединяемых агрегированных работ, так как в противном случае увеличивается время ожидания агрегированных
работ, следующих за общими вершинами, и, как следствие, увеличивается длительность прохождения объединяемых заданий в системе.
Объединяемые в «общие вершины» агрегированные работы должны соответствовать следующим требованиям:
1. Если длительность переналадки в мультиресурсе не превышает максимальную из длительностей выполнения объединяемых агрегированных работ (в
этом случае длительность переналадки несущественно влияет на приоритет
«общей вершины»), то приоритеты заданий, которым принадлежат объединяемые агрегированные работы, должны совпадать или различаться на незначительную величину . Последней задается диапазон значений приоритетов заданий, агрегированные работы которых объединяются в «общие вершины». Численные исследования показали, что наиболее эффективной является оценка 
порядка 8–10 % от меньшего приоритета. При согласованном планировании такому значению  соответствует минимальная коррекция состава «общих вершин». Чем больше , тем больше работ входит в состав «общей вершины» и тем
меньше переналадок. Однако чем больше , тем вероятнее включение в состав
628
Алгоритмическое обеспечение трехуровневой иерархической модели…
«общей вершины» агрегированной работы, принадлежащей заданию с низким
приоритетом, что обусловит понижение приоритета «общей вершины» и, как
следствие, задержит ее выполнение.
2. Моменты начала выполнения объединяемых агрегированных работ,
определяемые по критическому пути заданий как длительности путей от начала выполнения задания до объединяемых работ, должны совпадать или различаться не более, чем на величину , определяемую на основе экспериментальных исследований ( определяется длительностью переналадки для производственных задач, либо если при этом объединении сокращаются длительности
прохождения заданий или стоимость их выполнения). Чем меньше , тем
больше выполняется переналадок в мультиресурсах. Чем больше , тем, с одной стороны, большее число агрегированных работ войдет в состав «общей
вершины» и тем меньше переналадок, что сокращает длительность прохождения заданий в системе. С другой стороны, чем больше , тем возможнее увеличение длительности прохождения заданий в системе за счет ожидания готовности к выполнению объединяемых агрегированных работ.
3. Директивные сроки объединяемых агрегированных работ (определенные
как директивный срок задания минус длительности выполнения работ, следующих за назначаемой работой по графу на критических путях до конечной
вершины) равны или различаются на  ≈ 5–7% от меньшего директивного срока, определяемую на основе экспериментальных исследований. Чем меньше ,
тем больше переналадок и, как следствие, увеличивается длительность прохождения заданий в системе. Чем больше , тем меньше переналадок, но тем
вероятнее увеличение времени ожидания готовности объединяемых агрегированных работ к выполнению и, как следствие, увеличение длительности прохождения заданий в системе, что недопустимо при выполнении заданий точно
в срок.
4. Если длительность наладки существенно превышает максимальную из
длительностей выполнения объединяемых агрегированных работ, в «общие
вершины» могут быть объединены агрегированные работы, имеющие различ629
Глава 9
ные приоритеты, так как при объединении уменьшается длительность критических путей заданий, которым принадлежат объединяемые агрегированные
работы, за счет сокращения переналадок, которые изначально включены в
длительность выполнения работ. Однако приоритет «общей вершины»† должен отличаться от максимального приоритета агрегированных работ, входящих в ее состав, не более, чем на  ≈ 8–10% от максимального приоритета,
определяемую экспериментальными исследованиями.
Для функционалов без директивных сроков применяются требование 2 и, в
зависимости от длительности переналадки, требование 1 или 4 (если длительность переналадки в мультиресурсе превышает максимальную из длительностей объединяемых работ, то используется требование 4, в противном случае –
требование 1). Для задач с директивными сроками применяются требования 2
и 3 и, в зависимости от длительности переналадки, требование 1 или 4. В случае комбинированных функционалов, включающих несколько критериев оптимальности, для каждого критерия применяются соответствующие требования 1–4.
Для определения множества агрегированных работ, объединяемых в «общую вершину», используется алгоритм, позволяющий учесть сокращение длительностей критических путей заданий, которым принадлежат объединяемые
агрегированные работы (а значит, повышение приоритетов объединяемых заданий).
Алгоритм основан на следующей эвристике. Задания, объединенные «общей
вершиной», в последовательности ОПТ, полученной в результате решения задачи
МВМ, должны выполняться непосредственно одно за другим, так как в противном
случае при распределении этой последовательности при согласованном планировании длительности прохождения заданий в системе значительно возрастают.
†
Под приоритетом агрегированной работы понимается приоритет задания, которому она
принадлежит. Приоритет «общей вершины» определяется отношением суммы весов заданий, которым принадлежат объединяемые агрегированные работы, к сумме длин их критических путей.
630
Алгоритмическое обеспечение трехуровневой иерархической модели…
1. Упорядочиваем критические пути заданий множества J по невозрастанию значений их приоритетов (последовательность уп).
2. На критическом пути задания с максимальным приоритетом Jp выбираем
агрегированные работы, выполняемые в мультиресурсах, которые требуют
значительного времени для переналадок при переходе от одного вида работ к
другому. Упорядочиваем эти работы по возрастанию моментов начала их выполнения, определяемых длиной пути от начала критического пути до указанной вершины (последовательность 1).
3. Из последовательности 1 выбираем самую раннюю по моменту начала
выполнения агрегированную работу jr  Jp, требующую выполнения в мультиресурсе is.
4. Последовательно просматриваем критические пути заданий, следующих в
последовательности уп за заданием Jp, и ищем агрегированные работы, требующие выполнения в мультиресурсе is.
5. Для каждого задания, на критическом пути которого есть агрегированная работа, требующая выполнения в мультиресурсе is, проверяем условие,
позволяющее определить возможность объединения с агрегированной работой
jr  Jp, в общую агрегированную работу. Пусть на критическом пути задания
J t находится агрегированная работа ju, выполняемая в мультиресурсе is. Про-
веряем следующие условия:
а)
 Jt
где  Jq – вес задания
Jq
t 1

q  p 1
LJ q  liHs
n

q t 1

 J q  LJt  liHs

t 1

q  p 1
Jq ,
(9.2)
; LJ q – длительность его критического пути; liHs – дли-
тельность наладки в мультиресурсе is.
В левой части неравенства (9.2) отражено уменьшение значения функционала МВМ в случае встраивания задания J t (агрегированных работ, принадлежащих его критическому пути) после задания Jp в последовательности уп и в
результате уменьшения числа переналадок, а в правой части – увеличение значения функционала в результате смещения заданий на интервале p  1, t  1 на
более поздние позиции;
631
Глава 9
б)
J p
LJ p

 J p   Jt
LJ p  LJt  liís
,
(9.3)
где  ≈ 8–10% от максимального приоритета (требования 1, 4).
В соответствии с (9.3), приоритет «общей вершины» не должен быть
меньше приоритета задания Jp более, чем на величину . Если не выполняется
объединение, то длительность агрегированной работы включает время переналадки liHs .
Условия (9.2) и (9.3) последовательно проверяются для всех критических
путей заданий последовательности уп, на которых находятся агрегированные
работы, требующие выполнения в мультиресурсе is, и определяется возможность объединения с агрегированной работой jr  Jp.
6. Из последовательности 1 выбираем следующую по началу выполнения
агрегированную работу jv и, выполняя шаги 2–5, определяем возможность объединения ее с агрегированными работами заданий, следующих за заданием Jp.
7. Переходим к очередному заданию последовательности уп, на критическом пути которого находятся агрегированные работы, выполняемые в мультиресурсах, которые требуют существенного времени для переналадок; выполняем шаги 2–6 и определяем возможность объединения с агрегированными работами заданий, следующих за ним в последовательности уп.
При выполнении условий (9.2) и (9.3) определяются множества агрегированных работ, претендующих на объединение в общие агрегированные работы, а для построения общих агрегированных работ необходимо выполнение
дополнительных условий.
На основании указанных выше требований разработаны правила построения «общих вершин», которые можно разделить в зависимости от длительности переналадки на две группы (для непроизводственных систем под переналадкой понимается выполнение необходимых подготовительных работ):
1. Длительность переналадки больше максимальной из длительностей выполнения объединяемых агрегированных работ (правила 1 и 2).
632
Алгоритмическое обеспечение трехуровневой иерархической модели…
2. Длительность переналадки не превышает максимальную из длительностей выполнения объединяемых агрегированных работ (правила 3 и 4);
В свою очередь в каждой группе рассматриваются правила объединения
агрегированных работ, принадлежащих заданиям без директивных сроков и
правила для заданий с директивными сроками.
Правило 1. В случае отсутствия директивных сроков заданий объединение
агрегированных работ выполняется при выполнении условий (9.2) и (9.3), а
также если разность длительностей путей от начала критических путей заданий, которым принадлежат рассматриваемые агрегированные работы, до этих
работ не превышает длительности переналадки в мультиресурсе (требование
4). Если критические пути некоторых заданий имеют несколько «общих вершин», соответствующих требованию 2, то объединение агрегированных работ
выполняется при выполнении условий (9.2) и (9.3), а также если разность длительностей путей от начала критических путей заданий, которым принадлежат
объединяемые агрегированные работы с минимальным временем начала выполнения, до этих работ не превышает суммарного времени переналадок для
объединяемых вершин на этом интервале (см. пример такого объединения в
п.10.7).
Правило 2. В случае наличия директивных сроков агрегированные работы
объединяются в «общие вершины» при выполнении условий (9.2) и (9.3). Объединение выполняется, если их директивные сроки (определенные как директивный срок задания минус длительности выполнения агрегированных работ,
следующих за назначаемой работой по критическому пути до конечной вершины) равны или отличаются не более, чем на величину  (требование 3).
Правило 3. Агрегированные работы объединяются в «общие вершины», если выполняется условие (9.3). Объединение выполняется, если разность длительностей путей от начала выполнения задания до этих вершин не более, чем
время переналадки (для производственных задач), или если при этом сокращаются длительности прохождения заданий либо стоимость их выполнения
(требование 2). Если критические пути некоторых заданий имеют несколько
«общих вершин», то объединение агрегированных работ выполняется, если
633
Глава 9
разность длительностей путей от начала критических путей заданий, которым
принадлежат объединяемые агрегированные работы с минимальным временем
начала выполнения, до этих работ не превышает суммарного времени переналадок для объединяемых вершин на этом интервале.
Правило 4. В «общие вершины» объединяются агрегированные работы, для
которых выполняется условие (9.3). Объединение агрегированных работ выполняется, если их директивные сроки (определенные как директивный срок
задания минус длительности выполнения работ, следующих за назначаемой
работой по графу на критических путях до конечной вершины) также равны
или отличаются не более, чем на величину  (требование 3).
Правила 1 и 3 применяются для построения «общих вершин» в задачах с
функционалами, основанными на моментах окончания выполнения заданий, а
правила 2 и 4 – в задачах с функционалами, основанными на директивных сроках выполнения заданий. При комбинированных функционалах, например, при
решении задачи 3, когда для некоторых заданий заданы директивные сроки, которые не могут быть нарушены, а для остальных заданий директивные сроки отсутствуют, при построении графа на критических путях для заданий с директивными сроками «общие вершины» объединяются по правилу 2 или 4, а для
остальных заданий – по правилу 1 или 3. Агрегированные работы, принадлежащие заданиям с директивными сроками и заданиям без директивных сроков, объединяются в «общие вершины» только в том случае, если при распределении такое объединение оказывается целесообразным. Если в состав комбинированного
функционала входит критерий оптимальности выполнения заданий «точно в
срок», то при согласованном планировании в первую очередь назнаются на
выполнение задания, для которых необходимо выполнение «точно в срок».
Указанные правила объединения «общих вершин» сформулированы для приведенных ниже задач согласованного планирования по рассмотренным семи критериям оптимальности. В общем случае, как показано ниже, критериев оптимальности может быть значительно больше. Правила объединения в «общие
вершины» могут меняться в зависимости от выбранных критериев оптимизации.
634
Алгоритмическое обеспечение трехуровневой иерархической модели…
Одним из преимуществ разработанной модели являются принятые способы
агрегации, основанные на поиске подобия в пределах производственной системы и структуры задания и использовании этого подобия для сокращения
производственного цикла выполнения заданий, улучшения качества и подотчетности, лучшего обучения работников, повышения эффективности поставок,
снижения уровня незавершенного производства, получения высокой производительности и суммарной гибкости. Основанием для этих преимуществ является упрощение задачи планирования, более простое проведение общей координации выполнения заданий в системе. Иерархическая декомпозиция задачи
планирования делает вопрос о координации внутри системы легко решаемым.
2. Построение приоритетно-упорядоченной последовательности агрегированных работ, определяющей очередность запуска их на выполнение по заданным критериям оптимальности
Для определения очередности  запуска заданий на выполнение на первом
уровне модели на построенном графе на критических путях заданий решается
задача МВМ для случая, когда весовые коэффициенты всех вершин, кроме конечных, равны нулю. Для решения этой задачи неизвестны эффективные методы решения. Авторами [29] разработан эффективный точный ПДС-алгоритм
решения задачи в общем случае при произвольных весах, представленный в
главе 2. Для решения поставленной задачи предложен эффективный эвристический алгоритм (см. п. 9.3), основанный на точном ПДС-алгоритме. Разработанный эвристический алгоритм позволяет за приемлемое время решать реальные практические задачи с десятками тысяч переменных.
С этой целью для каждого критерия оптимальности строится своя аппроксимирующая математическая модель задачи МВМ, учитывающая свойства исследуемых задач. Приоритеты, которые определяют очередность выполнения заданий, полученные в результате решения задачи МВМ, служат основной информацией при разработке алгоритмов планирования второго и третьего уровней модели.
635
Глава 9
Рассмотрим типы структур приоритетно-упорядоченной последовательности,
получаемой в результате решения задачи МВМ.
1. На графе, построенном на критических путях заданий, «общие вершины»
отсутствуют. Оптимальной последовательности соответствует упорядочение заданий в соответствии с их приоритетами. На этапе согласованного планирования
задания на выполнение назначаются в очередности, определенной оптимальной
последовательностью.
2. Каждый критический путь порождает не более одной «общей вершины». В
этом случае оптимальное решение задачи МВМ на графе на критических путях
заданий определяет порядок выполнения групп заданий, каждая из которых объединена «общей вершиной». На этапе согласованного планирования в первую
очередь назначается на выполнение соответствующая группа заданий с максимальным приоритетом, определяемым отношением суммы весов заданий, входящих в эту группу, к сумме их длительностей.
3. Общий случай: каждый критический путь порождает более одной «общей
вершины». Тогда оптимальное решение задачи МВМ на графе на критических
путях заданий определяет порядок выполнения групп заданий, каждая из которых объединена несколькими «общими вершинами». Тогда при выполнении согласованного планирования с учетом принципов, приведенных ниже, и ограничений, связанных с технологией выполнения заданий, должна реализовываться
возможность назначения на выполнение в первую очередь групп заданий, стоящих в приоритетно-упорядоченной последовательности на более ранних позициях.
3. Согласованное планирование функционирования подразделений системы
Второй уровень модели служит для построения согласованного плана выполнения агрегированных работ в системе в соответствии с заданным критерием оптимальности и состоит в распределении по мультиресурсам для выполнения полученной на первом уровне приоритетно-упорядоченной последовательности выполнения агрегированных работ по заданному критерию.
636
Алгоритмическое обеспечение трехуровневой иерархической модели…
Реализация согласованного планирования основана на следующих принципах:
1. Максимальное приближение длительности прохождения каждого задания в системе к его критическому пути, что позволяет:
а) уменьшить объемы незавершенных работ;
б) сократить длительности выполнения заданий;
в) уменьшить простои и тем самым увеличить производственную мощность;
г) повысить рентабельность системы планирования.
2. Задания, для которых отсутствуют директивные сроки, назначаются на
выполнение в соответствии с их приоритетами по правилу: чем выше приоритет задания (группы заданий), тем раньше оно должно быть назначено на выполнение.
3. Задания с директивными сроками назначаются на выполнение в очередности, определенной приоритетно-упорядоченной последовательностью максимально близко к директивному сроку: чем выше приоритет, тем меньше отклонение выполнения задания от директивного срока.
Такое назначение заданий на выполнение обусловлено спецификой приведенных функционалов и позволяет получить эффективные решения, близкие к
оптимальным.
После построения приоритетно-упорядоченного расписания ОПТ необходимо распределить по мультиресурсам все агрегированные работы, лежащие
на критических путях заданий. Для уточнения объединения агрегированных
работ в «общие вершины» осуществляется двукратное распределение данной
последовательности. С этой целью «общие вершины» представляются в виде
последовательности входящих в ее состав агрегированных работ с сохранением порядка предшествования исходного графа. Первое распределение служит
для определения фактической информации об объединении «общих вершин»
на стадии распределения, т. е. уточнения состава «общих вершин». Если в результате распределения оказывается, что при таком объединении нарушаются
правила объединения «общих вершин» (например, большая разница во време637
Глава 9
нах готовности к выполнению рассматриваемых вершин, приводящая к увеличению времени ожидания выполнения объединяемых работ, в связи с ограниченностью ресурсов), то такая вершина исключается из набора «общих вершин» графа на критических путях, либо отдельные агрегированные работы исключаются из ее состава. Если в результате распределения оказывается, что
для отдельных агрегированных работ, не входящих в состав «общих вершин»,
выполняются правила объединения, то такие агрегированные работы дополнительно включаются в состав «общих вершин». Таким образом, уточняется
набор «общих вершин» и строится новый граф на критических путях заданий.
На уточненном графе с новым набором общих вершин решается аппроксимирующая для каждого критерия оптимальности задача МВМ, полученная приоритетно-упорядоченная последовательность определяет очередность выполнения заданий и служит для построения согласованных планов выполнения работ по заданным критериям оптимальности. Второе распределение может решаться либо на графе на критических путях (это может осуществляться,
например, для определения оптимального состава портфеля заказов для производственных систем), либо на графе G', полученном в результате агрегации
(для точного планирования на третьем уровне).
С этой целью последовательность ОПТ, полученная в результате решения
аппроксимирующей задачи МВМ, дополняется вершинами графа G', не лежащими на критических путях заданий, и строится допустимая по выполнению
последовательность *, на основе которой реализуется согласованное планирование. Задания назначаются на выполнение в соответствующих мультиресурсах в очередности, определенной последовательностью *, посредством алгоритмов распределения 1–3, описанных ниже. При этом «общие вершины» распределяются как единая целая вершина. Таким образом, использование приоритетно-упорядоченной последовательности ОПТ, полученной на первом
уровне планирования, при реализации согласованного планирования на втором
уровне является обоснованием утверждения, что трехуровневая модель планирования пусть эвристически, но реализует стратегию поиска глобального оптимума при построении точного планирования на третьем уровне.
638
Алгоритмическое обеспечение трехуровневой иерархической модели…
Если «общие вершины» отсутствуют, то решение задачи МВМ упрощается,
однако общая схема решения задачи остается прежней.
Таким образом, мы рассмотрели случай, предполагающий, что объединение
в «общие вершины» определяется существенными переналадками, влияющими
на длительность прохождения заданий в системе. Однако на практике это не
всегда выполняется. Даже если переналадками можно пренебречь, моделью
первого уровня является связный частично-упорядоченный ориентированный
ацикличный граф, и «общие вершины» естественным образом определяются
технологией выполнения заданий. В этом случае коррекция «общих вершин» не
требуется, и задача решается по приведенной выше схеме.
Для реализации согласованного планирования разработаны следующие алгоритмы распределения:
а) построение компактных расписаний (алгоритм 1);
б) построение незадерживающих расписаний (алгоритм 2);
в) построение расписаний, обеспечивающих выполнение в заданные директивные сроки заданий с наивысшим приоритетом (алгоритм 3).
В зависимости от выбранного критерия оптимальности применяется один из
разработанных алгоритмов либо их комбинация.
Определение 9.1. Календарный план называется компактным [28], если ни
одна из его операций не допускает сдвига влево, т. е. такого смещения влево,
которое ограничено только предыдущей операцией этой же детали (или допустимым моментом начала ее обработки) и не приводит к увеличению моментов
начала выполнения других операций. Компактный календарный план получается путем допустимого сжатия как «скольжением», так и «переносом» операций.
Определение 9.2 [28]. Календарный план называется незадерживающим,
если в любой момент в нем ни один станок не простаивает, если он свободен и
доступен для выполнения операции.
Алгоритмы 1 и 2 построены с использованием алгоритмов ГиффлераТомпсона [28, 65]. Можно показать, что всякое оптимальное решение календарного планирования с регулярным критерием является компактным календарным планом. Вместе с тем не всякий незадерживающий календарный план
639
Глава 9
является оптимальным [28]. Однако незадерживающие календарные планы составляют очень важный подкласс, так как во-первых, они просто строятся, и
во-вторых, несмотря на возможность отсутствия среди них оптимального календарного плана, практические соображения указывают, что в большинстве
случаев оптимальный календарный план является незадерживающим.
В компактных и незадерживающих календарных планах минимизируются
простои между выполняемыми агрегированными работами и, следовательно,
минимизируется длительность прохождения заданий в системе. Выбор алгоритма 1 или 2 осуществляется в зависимости от типа исходных данных: если
длительности выполнения агрегированных работ, входящих в состав заданий,
различаются несущественно (разница не превышает длительности переналадок
в мультиресурсах), выбирается алгоритм 2, в противном случае – алгоритм 1.
Ниже приводится алгоритм, с помощью которого строят компактные календарные планы, а затем его модификация, которую применяют для построения незадерживающих календарных планов.
Алгоритм 1.
Построение компактных расписаний (распределение агрегированных работ
последовательности * по мультиресурсам) основано на следующей эвристике. На каждом шаге из рассматриваемой подпоследовательности максимального приоритета выбирается очередная готовая к выполнению агрегированная
работа и назначается на мультиресурс с минимальным временем освобождения после выполнения этой работы таким образом, чтобы не нарушались технологические ограничения. Это обеспечивает невозможность выполнения какой-либо агрегированной работы в более ранний момент без задержки момента начала выполнения какой-либо другой агрегированной работы.
Алгоритм 2.
Следующая модификация алгоритма 1 позволяет получить незадерживающие расписания. Алгоритм 2 основан на такой эвристике: на каждом шаге
назначается на выполнение агрегированная работа с минимальным временем
начала выполнения и минимальным номером подпоследовательности максимального приоритета.
640
Алгоритмическое обеспечение трехуровневой иерархической модели…
Достоинством компактных и незадерживающих расписаний является минимизация простоев в мультиресурсах и, следовательно, минимизация времени
прохождения заданий в системе, уменьшение объема незавершенных работ и
повышение эффективности системы.
Алгоритм 3 (для заданий с директивными сроками).
Распределение агрегированных работ осуществляется на основании следующей эвристики. Подпоследовательность * рассматривается с начала, с агрегированных работ более высокого приоритета. На первом шаге выбирается агрегированная работа с максимальным приоритетом из списка конечных (не
имеющих преемников), входящих в состав подпоследовательности максимального приоритета 1*, и назначается таким образом, чтобы момент окончания
ее выполнения соответствовал директивному сроку задания. На каждом следующем шаге на мультиресурс назначается агрегированная работа с максимальным временем запуска в мультиресурсе и минимальным номером подпоследовательности максимального приоритета, в которую оно входит. Максимальное
время запуска агрегированной работы в мультиресурсе определяется наиболее
поздним временем окончания выполнения агрегированной работы минус длительность ее выполнения (с необходимой переналадкой оборудования для производственных проектов). Пóзднее время окончания выполнения агрегированной работы определяется минимальным из времен запуска всех ее преемников
по графу, определенных при назначении преемников на выполнение.
При таком распределении в первую очередь на выполнение назначаются
задания с наивысшим приоритетом максимально близко к директивным срокам без их нарушения, а для запаздывающих заданий минимизируется величина суммарного штрафа за запаздывание относительно директивных сроков, что
позволяет предприятию выполнить наибольшее количество заданий без нарушения директивных сроков и максимизировать прибыль предприятия.
Более подробно алгоритмы распределения описаны в п.10.8.
Алгоритмическое обеспечение третьего уровня модели основано на тех же
принципах, что и при согласованном планировании на втором уровне модели.
Алгоритмы решения задач по критериям 1–7 (с обобщением на 31 критерий)
641
Глава 9
на втором и третьем уровне модели имеют общую структуру, приведенную в
п. 9.1. Это позволило создать единый эффективный эвристический мегаалгоритм решения многоэтапных задач календарного планирования по различным критериям оптимальности.
9.2.2 Основные эвристики, используемые при решении задач первого и
второго уровня иерархической модели планирования и управления
Постановки задач планирования, включенных в иерархическую модель,
содержательно связаны между собой. Общая постановка этих задач приведена
в п. 8.5. Рассмотрим агрегированные модели первого уровня и основные эвристики согласованного планирования на втором уровне для каждой из задач 1–7
[14].
Примечание 1. Как показано в главе 8, для задачи 1 агрегированной моделью первого уровня является задача МВМ. Для задач 2–7 в качестве агрегированной модели первого уровня выбирается специальным образом построенная
аппроксимирующая задача МВМ. Ниже для каждой из задач 2–7 обоснована
целесообразность такой аппроксимации и рассмотрены особенности решения
каждой задачи на первом и втором уровне.
Примечание 2. В задачах 1–7 действует общее ограничение (п. 8.5), согласно которому длительность выполнения каждого задания и агрегированных работ определяется критическим путем. Ниже i и ji обозначают номер задания в
соответствии с индексацией, заданной функционалом;
j[g ]
– номер работы,
стоящей в допустимом расписании на позиции g.
Задача 1. Критерий оптимальности: максимизация суммарной прибыли
предприятия в случае отсутствия директивных сроков. Ему соответствует
функционал (см. п. 8.5):
n
min  i (T )  Ci ,
i 1
где i(T) – весовой коэффициент задания i, определенный экспериментальным
путем; T – плановый период; Ci – момент окончания выполнения задания.
642
Алгоритмическое обеспечение трехуровневой иерархической модели…
При построении графа на критических путях заданий (система планирования
представляется в виде одного станка) общие для критических путей вершины
определяются по правилам 1 или 3 (п. 9.2.1) в зависимости от длительности переналадки в мультиресурсе (или длительности подготовительных работ).
Задача 1 является задачей МВМ, как показано на примере критерия F1 в п.
8.5. Приоритетно-упорядоченная последовательность *, полученная в результате решения задачи МВМ (алгоритм решения см. в. п. 9.3), распределяется по
алгоритмам 1 или 2, что позволяет минимизировать суммарное время выполнения каждой из подпоследовательностей максимального приоритета и, таким
образом, обеспечить минимальное время окончания выполнения наиболее выгодных, с точки зрения прибыли, заданий. При такой реализации решения задачи 1 максимизируется суммарная прибыль предприятия по всем заданиям.
Задача 2. Для всех заданий введены директивные сроки di, которые не могут быть нарушены (планирование «точно в срок»). Критерий оптимальности:
n
max  iUi, где Ui =
i 1
1, Ci  d i

0, Ci  d i
,
i – прибыль от выполнения i-го задания, если оно выполнено точно в срок.
При построении графа на критических путях заданий общие вершины формируются по правилам 2 или 4 (п. 9.2.1) в зависимости от длительности переналадки мультиресурса (длительности подготовительных работ).
Построение аппроксимирующей задачи МВМ для определения очередности
запуска агрегированных работ на выполнение основано на следующих сообраn
жениях. Сама задача МВМ строится путем замены функционала max  iU i на
i 1
функционал
n
min  i  Ci , где C i
– момент окончания выполнения i-го задания.
i 1
Обоснование. 1) Рассмотрим частный случай, когда задания являются независимыми. Имеет место следующее утверждение.
Утверждение 9.1 [28]. Минимальное значение суммарной взвешенной
длительности прохождения (взвешенной длительности производственного
643
Глава 9
цикла – в наших терминах
n
min  i  Ci )
независимых заданий в системе с одним
i 1
станком достигается при расписании, для которого выполняется 1 l1  2 l2 
…   n l n , где i и
li
– соответственно вес и длительность i-го по порядку за-
дания в оптимальном расписании.
Таким образом, первым выполняется задание, у которого отношение прибыли (в терминах задачи 2) к длительности является максимальным, т. е. максимальной является удельная прибыль на единицу времени производственного
цикла. Таким образом, в задаче 2 логично первым реализовать выполнение задания с максимальной удельной прибылью на единицу производственного
цикла 1 l1 (максимально эффективное использование времени производственного цикла), затем задание с удельной прибылью 2 l 2 и т.д. Альтернативой этой эвристике является лишь полный перебор вариантов назначения заданий на выполнение.
2) Общий случай. Ограничение на выполнение заданий задано построенным ориентированным графом на критических путях. В этом случае оптимальным решением задачи МВМ является p-упорядоченное расписание (см.
главу 2), в котором последовательность заданий разбита на множества максимальных приоритетов Gi , i  1, k , pG1   pG2   ...  pGk  . Таким образом, если первыми выполняются работы оптимального расписания, соответствующие множеству G1 , этим гарантируется, что на начальном отрезке производственного цикла длительностью  l i выполняются задания, для которых
iG1
достигается максимальная усредненная прибыль на единицу времени производственного цикла: pG1     i  l i .
iG1
iG1
Обоснование использования оптимального расписания задачи МВМ в общем случае для задачи 2 аналогично рассмотренному выше частному случаю с
учетом замены термина «максимальная удельная прибыль на единицу времени
производственного цикла» на термин «максимальная усредненная удельная
прибыль на единицу времени производственного цикла».
644
Алгоритмическое обеспечение трехуровневой иерархической модели…
Примечание. Рассмотрим произвольное допустимое расписание, заданное
на множествах максимального приоритета G1 , G2 ,..., Gk . Ему полностью соответствует приведенное выше обоснование для оптимальной последовательности. Однако на втором этапе системы планирования используется порядок выполнения заданий, соответствующий оптимальному расписанию, так как у него усредненная прибыль на единицу времени производственного цикла любой
начальной подпоследовательности любого множества максимального приоритета не меньше, чем соответствующее значение усредненной прибыли на единицу времени производственного цикла для произвольного допустимого расписания, заданного на множествах максимального приоритета.
Распределение агрегированных работ последовательности * выполняется
по алгоритму 3. При такой реализации алгоритма решения задачи 2 задания
назначаются на выполнение в соответствии с приоритетом подпоследовательности, в состав которой они включены (под приоритетом подпоследовательности понимают отношение суммы весов агрегированных работ, включенных в
нее, к сумме их длительностей). Чем выше приоритет подпоследовательности,
тем раньше назначаются на выполнение работы, принадлежащие данной подпоследовательности (в последовательности * эти агрегированные работы занимают более ранние позиции). Это обеспечивает выполнение в заданный директивный срок в первую очередь заданий с максимальным приоритетом и,
следовательно, позволяет максимизировать суммарную прибыль предприятия.
При наличии заданий, которые не могут быть выполнены в срок, расписание передается в блок принятия решений для корректировки. Эти задания либо
исключаются из выполнения, либо принимается решение о приобретении дополнительных ресурсов.
Задача 3. Для некоторых заданий i  1, k заданы директивные сроки, которые
не могут быть нарушены. Для остальных изделий di = 0. Критерий оптимизации:
k
n
i 1
i  k 1
max(  iUi +  i T  (T  Ci ) ), где Ui =
1, Ci  d i

0, Ci  d i
,
645
Глава 9
i – прибыль от выполнения i-го задания, если оно выполнено точно в срок;
i(T) – весовой коэффициент задания i (имеет тот же смысл, что и в задаче 1).
Аналогично выкладкам, приведенным для задач 1 и 2, очередность запуска
агрегированных работ на выполнение определяется в результате решения следующей задачи МВМ:
n
n
k

min   i  Ci   i Ci   min  i  Ci ,
i  k 1
i 1
 i 1

где  i имеет тот же смысл, что и в задаче 2, а i – тот же смысл, что и в задаче
1. Очевидно, i  i i  1, k ; i  i i  k  1, n .
При построении графа на критических путях для заданий с директивными
сроками «общие вершины» объединяются по правилу 2 или 4 (п. 9.2.1), а для
остальных заданий – по правилу 1 или 3.
Процедура распределения на выполнение агрегированных работ последовательности *, полученной в результате решения задачи МВМ, является смешанной процедурой распределения задач 1 и 2. Для заданий с директивными сроками распределение осуществляется с конца, т. е. используется алгоритм 3. Для
других заданий используется алгоритм 1 или 2 (выбор делается в соответствии с
характеристиками исходных данных). Если выполнение какого-либо задания не
укладывается в его директивный срок, то расписание передается в блок принятия решений для корректировки (либо увеличиваются ресурсы системы, и все
задания выполняются в свой директивный срок, либо задания исключаются в
ущерб суммарной прибыли).
При таком распределении в первую очередь выполняются задания, для которых запрещено нарушение директивных сроков. Они распределяются в соответствии с приоритетами в заданные директивные сроки. Задания, для которых не заданы директивные сроки, распределяются таким образом, чтобы минимизировать суммарное время выполнения каждой из подпоследовательностей максимального приоритета, что обеспечивает минимальное время выпуска наиболее выгодных, с точки зрения прибыли, заданий. В результате максимизируется суммарная прибыль предприятия по всем заданиям.
646
Алгоритмическое обеспечение трехуровневой иерархической модели…
Примечание. Эвристика разработана для предположения, что прибыль по
заданиям, выполняемым точно в срок, намного больше, чем по заданиям, для
которых директивный срок не задан. Однако в реальных условиях возможна
ситуация, что задание, не выполненное точно в срок, выгоднее исключить из
выполнения, если при этом значение функционала улучшится. В этом случае
эвристика модифицируется следующим образом. Анализируется согласованный план, полученный по приведенной выше эвристике решения задачи 3, и
запоминается значение оптимизируемого функционала. Находим задание j[q ] с
минимиальным директивным сроком. Проверяем условие:
 j[ q ] 
t
 j
r  q 1
[r ]
 l j[ q ] ,
где для заданий на интервале q  1, t директивные сроки не заданы, на позиции
t + 1 находится задание с заданным директивным сроком. Здесь j[q ] – прибыль
от выполнения задания j[q ] , если оно выполнено точно в срок; в правой части
неравенства – выигрыш от исключения задания j[q ] по заданиям, для которых
директивный срок не задан. Если это условие выполняется, то задание j[q ] не
исключается из выполнения, в противном случае повторно выполняются алгоритмы распределения без задания j[q ] . Полученное значение функционала сравнивается с запомненным. Аналогичные процедуры выполняются для всех заданий с директивными сроками, пока не будет рассмотрена вся последовательность.
Задача 4. Для всех заданий i  I введены директивные сроки di. Необходимо
выполнить n заданий, минимизируя суммарное взвешенное запаздывание выполнения заданий относительно директивных сроков:
n

min  i max  0, Ci  di   ,
 i 1

где i – штраф за запаздывание окончания выполнения i-го задания относительно директивного срока на единицу времени.
647
Глава 9
Объединение «общих вершин» при построении графа на критических путях
заданий выполняется по правилу 2 или 4 (п. 9.2.1) в зависимости от длительности переналадки мультиресурса (длительности подготовительных работ).
Аппроксимирующая задача МВМ имеет вид:
n
min  i  Ci ,
i 1
где i  i – штраф
за запаздывание момента Ci окончания выполнения i-го задания относительно
директивного срока di на единицу времени. Ограничения на выполнение заданий одним прибором заданы ориентированным графом на критических путях.
Представим оптимальное расписание задачи МВМ в виде последовательности
заданий  *  jl1 , jl2 ,..., jln .
Использование порядка выполнения заданий, определяемого оптимальной
последовательностью *, обосновывается аналогично приведенному в задаче 2.
Необходимо только термин «усредненная прибыль задания на единицу времени
производственного цикла» заменить на термин «усредненное удельное значение
штрафа на единицу времени производственного цикла» в соответствии с содержательной трактовкой функционала задачи 4.
В связи с этим на втором этапе логично первым ставить на выполнение максимально близко к его директивному сроку задание jl1 , имеющее максимальный
приоритет в первой подпоследовательности максимального приоритета (точнее,
представляющую задание jl1 последовательность агрегированных работ, включая общие вершины). В этом случае штраф  l
1

max 0, Cl1  d l1

является нулевым
либо минимально возможным.
Вторым максимально близким к своему директивному сроку ставится на
выполнение задание jl2 , следующее по значению приоритета в этой подпоследовательности (представляющая задание jl2 последовательность агрегированных работ, включая общие вершины). В этом случае можно ожидать, что штраф
 l2 max0, Cl2  d l2 
будет нулевым либо близким к минимально возможному с уче-
том того, что первым на выполнение было поставлено задание jl1 , и т.д.
648
Алгоритмическое обеспечение трехуровневой иерархической модели…
Процедура распределения, как и в задаче 3, является смешанной. В первую
очередь по алгоритму 3 распределяются задания, имеюшие наивысший приоритет. Они назначаются на выполнение на интервалы планового периода, максимально близкие к директивным срокам, без их нарушения, освобождая при
этом резервы на более ранних интервалах для остальных заданий. Если выполнение какого-либо задания не укладывается в его директивный срок, то задание распределяется по алгоритму 1 или 2 в очередности, определенной последовательностью ОПТ.
При таком распределении задания с наивысшим приоритетом, т. е. наиболее выгодные, выполняются без запаздывания, а для запаздывающих заданий
минимизируется значение суммарного штрафа за запаздывание относительно
директивных сроков. Таким образом, максимизируется суммарная прибыль
предприятия по всему множеству заданий.
Задача 5. Постановка задачи соответствует постановке задачи 4. Введено
дополнительное условие: для некоторых заданий i  1, k директивные сроки не
могут быть нарушены. Критерий оптимальности:
k
n
i 1
i  k 1
max(  iU i – i max(0, Ci – di)), где Ui =
1, Ci  d i

0, Ci  d i
,
i – прибыль от выполнения i-го задания, если оно выполнено точно в срок; i
– штраф за запаздывание окончания выполнения i-го задания относительно директивного срока на единицу времени.
Очередность запуска агрегированных работ на выполнение определяется
решением следующей задачи МВМ:
n
n
k

min   i  Ci   i Ci   min  i  Ci ,
i  k 1
i 1
 i 1

где  i имеет тот же смысл, что и в задаче 2, а i – тот же смысл, что и в задаче
4. Очевидно, i  i i  1, k ; i  i i  k  1, n .
Построение графа на критических путях заданий выполняется аналогично задаче 4. В процедуре распределения на выполнение агрегированных работ последовательности *, полученной в результате решения задачи МВМ, задания, для
которых запрещено нарушение директивных сроков, распределяются в соответ649
Глава 9
ствии с алгоритмом 3. Если их не удается распределить без нарушения директивных сроков, то расписание передается в блок принятия решений для корректировки (либо увеличиваются ресурсы системы, и все задания выполняются в свой
директивный срок, либо задания исключаются в ущерб суммарной прибыли).
При таком распределении в первую очередь выполняются задания, для которых запрещено нарушение директивных сроков и выполнение которых обязательно, а для других заданий минимизируется суммарное взвешенное запаздывание
относительно директивных сроков, причем задания с наивысшим приоритетом, т.
е. наиболее выгодные, выполняются без запаздывания. Таким образом, максимизируется суммарная прибыль предприятия на всем множестве заданий.
Примечание 1. Аналогично задаче 3, приведенные эвристики написаны для
случая, когда задания с директивными сроками обязательны для выполнения.
При отсутствии этого условия модификация алгоритма следующая. Анализируется согласованный план, полученный по приведенной выше эвристике решения задачи 5, и запоминается значение оптимизируемого функционала.
Находим задание j[q ] с минимальным директивным сроком. Проверяем условие:
 j[ q ] 
   max0, C
t
r  q 1
j[ r ]
j[ r ]


 d j[ r ]  max 0, C j[ r ]  d j[ r ]  l j[ q ]
 ,
где для заданий на интервале q  1, t директивные сроки не заданы, на позиции
t + 1 находится задание с заданным директивным сроком. Здесь j[q ] – прибыль
от выполнения задания j[q ] , если оно выполнено точно в срок; в правой части
неравенства – уменьшение штрафа по заданиям, для которых директивный
срок не задан, при исключении задания j[q ] из расписания. Если это условие
выполняется, то задание j[q ] не исключается из выполнения, в противном случае повторно выполняются алгоритмы распределения без задания j[q ] . Полученное значение функционала сравнивается с запомненным. Аналогичные процедуры выполняются для всех заданий с директивными сроками, пока не будет
рассмотрена вся последовательность.
650
Алгоритмическое обеспечение трехуровневой иерархической модели…
Примечание 2. Задания, у которых директивные сроки существенно больше других, необходимо отнести к категории заданий, для которых директивный срок не может быть нарушен.
Задача 6. Для всех заданий i  I введены директивные сроки di. Для каждого задания указана величина i – абсолютная прибыль от выполнения задания,
не зависящая от момента окончания выполнения задания в том случае, если
задание выполняется без запаздывания относительно директивного срока, иначе прибыль предприятия по этому заданию равна нулю. Критерий оптимальности – максимизация суммарной прибыли предприятия:
n
max  iUi, где Ui =
i 1
1, Ci  d i

0, Ci  d i
,
i – прибыль от выполнения i-го задания, если оно выполнено без запаздывания относительно директивного срока.
Очередность запуска агрегированных работ на выполнение определяется в
результате решения следуюшей задачи МВМ:
n
min  i  Ci .
Обоснование этой
i 1
процедуры аналогично задаче 2.
При построении графа на критических путях заданий при определении общих вершин используются правила 2 и 4 (п. 9.2.1).
Последовательность *, как и в задаче 4, распределяется по алгоритму 3.
Если какое-либо задание не удается распределить без нарушения директивного
срока, то расписание передается в блок принятия решений для корректировки.
При таком распределении в первую очередь назначаются на выполнение
задания с наивысшим приоритетом максимально близко к директивным срокам без их нарушения, что позволяет предприятию выполнить наибольшее количество заданий без запаздывания и, следовательно, получить максимальную
суммарную прибыль по рассмотренному критерию оптимальности.
Задача 7. Для всех заданий заданы директивные сроки di. Необходимо минимизировать суммарный штраф предприятия как за опережение, так и за запаздывание относительно директивных сроков:
651
Глава 9
n
min

i |Ci – di|,
i 1
где i – штраф за отклонение момента окончания выполнения i-го задания от
директивного срока на единицу времени.
Аналогично задаче 4, очередность запуска агрегированных работ на выполнение определяется решением задачи МВМ:
n
min  i  Ci ,
i 1
где i  i – вес за-
дания i. Граф на критических путях строится аналогично задаче 6.
Последовательность * распределяется по алгоритму 3, встраивая задания
так, чтобы момент окончания их выполнения соответствовал директивному
сроку di или был меньше di не более, чем на заданную величину i. Задания,
которые не удалось распределить без нарушения директивного срока, выносятся в отдельный список, который упорядочивается в соответствии с их директивными сроками и распределяется по алгоритму 1 или 2.
При таком распределении без нарушения директивных сроков (или максимально близко к ним) выполняются наиболее выгодные задания. Для заданий,
выполняемых с запаздыванием, минимизируется отклонение момента окончания выполнения от директивного срока. В результате минимизируется суммарный штраф предприятия за опережение или запаздывание относительно директивных сроков и максимизируется суммарная прибыль предприятия.
Примечание 1. На самом деле описанный в п. 9.2.2 подход решает не семь, а
5
тридцать одну (  C5m ) задачу планирования – пять базовых функционалов (задаm 1
чи 1, 2, 4, 6, 7), а также все возможные их комбинации. Такая возможность проиллюстрирована на задачах 3 и 5. Во всех случаях, когда, аналогично задачам 3 и
5, задания необходимо выполнить точно в срок, определяется разность между
прибылью от выполнения задания точно в срок и уменьшением значения функционала в случае исключения этого задания из расписания. Вопросы об исключении задания из выполнения решаются в блоке принятия решений. В задачах, не
включающих критерий выполнения заданий точно в строк, предусматривается
обязательное выполнение всех заданий.
652
Алгоритмическое обеспечение трехуровневой иерархической модели…
Примечание 2. Необходимость аппроксимации задач планирования первого уровня соответствующими задачами МВМ обоснована следующими причинами: 1) глубокая связь между этими задачами, проиллюстрированная выше;
2) создание эффективного приближенного алгоритма (п. 9.3) для решения задачи МВМ первого уровня, базирующегося на идеях ПДС-алгоритма для задачи МВМ (глава 2).
9.2.3 Эвристики, используемые при реализации третьего уровня модели
На третьем уровне модели осуществляется дезагрегация мультиресурсов
на отдельные ресурсы, и агрегированных работ – на входящие в их состав отдельные работы. На этом уровне строится полный план выполнения работ с
привязкой к ресурсам (точное планирование), реализующий порядок и сроки
выполнения агрегированных работ и полученный в результате согласованного
планирования на втором уровне модели. Решается следующая задача.
На вход мультиресурса, представленного множеством однотипных ресурсов M = {R1, R2, …, Rm}, поступает множество агрегированных работ, принадлежащих различным заданиям, которые необходимо выполнить. Каждая агрегированная работа – это совокупность отдельных работ с заданным отношением порядка. Для каждой агрегированной работы известны момент начала и
длительность выполнения; для конечных работ, соответствующих выполненным заданиям, задан вес, для отдельных агрегированных работ известен также
директивный срок окончания. Для каждой отдельной работы, входящей в состав агрегированной работы, известна длительность ее выполнения в течение
непрерывного времени, никакая работа не может быть прервана. Каждый ресурс может выполнять только одну работу, и каждая работа может выполняться только одним ресурсом одновременно. Необходимо составить расписание
функционирования мультиресурса по критериям 1–7 (с обобщением на 31 критерий).
На этом уровне решаются задачи как для одного, так и для параллельных
станков в случае независимых или взаимосвязанных заданий по критериям 1–7.
653
Глава 9
При построении алгоритмов планирования используются приоритеты запуска
заданий на выполнение, полученные при решении задачи МВМ на первом уровне
модели, а также алгоритмы распределения, описанные выше. Эвристики, используемые при реализации алгоритмов планирования третьего уровня модели, не
приводятся, так как их конструирование не представляется сложным на основании уже полученных результатов, и они не имеют дополнительной научной ценности.В алгоритмическое обеспечение третьего уровня включены ПДС-алгоритмы задач МСЗ (глава 1) и МСЗП (глава 3), они являются частными случаями задачи 4.
Постановка задачи МСЗ. Необходимо для одного мультиресурса, представленного одним уникальным станком, построить расписание выполнения независимых работ, принадлежащих разным заданиям с равными весами. Известны
длительность выполнения работ li и директивные сроки di. Все работы поступают
на выполнение одновременно. Критерий оптимальности:
n
min

max(0, Ci – di);
i 1
Постановка задачи МСЗП. Необходимо для одного мультиресурса, оборудованного параллельными однотипными станками, построить расписание выполнения независимых работ, принадлежащих разным заданиям с общим директивным сроком d и равными весами. Известны длительности выполнения
работ li. Все работы поступают на выполнение одновременно. Критерий оптимальности:
n
min  max(0, Ci – d).
i 1
Расписание, полученное на третьем уровне модели, должно реализовывать
все временны' е ограничения выбранного в блоке принятия решений наилучшего расписания второго уровня модели. Это возможно лишь при оптимальном
решении соответствующих моделей задач третьего уровня, что, в свою очередь, обусловливает необходимость создания эффективных точных методов и
алгоритмов их реализации.
654
Алгоритмическое обеспечение трехуровневой иерархической модели…
Задача МОЗ (п. 9.4) включена в алгоритмическое обеспечение 3-го уровня
(частный случай задачи 7).
Постановка задачи МОЗ. Необходимо для одного мультиресурса, представленного одним уникальным станком, построить расписание выполнения независимых работ, принадлежащих разным заданиям с равными весами. Известны
длительность выполнения работ li и директивные сроки di. Все работы поступают
на выполнение одновременно. Критерий оптимальности:
n
min

|Ci – di|.
i 1
На основании приведенного в п. 9.4 приближенного алгоритма и методологии построения ПДС-алгоритмов возможна разработка ПДС-алгоритма решения
задачи МОЗ.
Схема взаимосвязи алгоритмов решения всех задач в иерархической модели планирования функционирования сложных систем показана на рис. 9.1.
Общая схема решения задач приведена на рис. 9.2. Иллюстрационный пример
решения задачи планирования приведен в п.10.7.
Центральной при решении задач согласованного планирования иерархической модели планирования и управления является задача «Минимизация суммарного взвешенного момента окончания выполнения заданий при отношении
порядка, заданном ориентированным ацикличным графом, в которой для всех
вершин графа, кроме конечных, вес равен нулю» (МВМН), рассматриваемая в
9.3. Эта задача служит для определения очередности назначения агрегированных работ на выполнение, что в свою очередь является основной информацией
для решения задач второго и третьего уровня модели.
655
Глава 9
Блок загрузки данных
и агрегации
Блок построения
графа на критических путях
с общими вершинами
Блок оптимизации
(Решение аппроксимирующей
задачи МВМ)
Задача 1
Задача 2
Минимизация суммарного
взвешенного момента
окончания выполнения
заданий
Выполнение заданий без
нарушения директивных
сроков (планирование
«точно в срок»)
Задача 3
Минимизация суммарного
взвешенного момента
окончания выполнения
заданий, если для некоторых
заданий не могут быть
нарушены директивные сроки
Назначение
агрегированных работ
по Алгоритму 1
Задача 4
Минимизация суммарного
взвешенного запаздывания
выполнения заданий
относительно директивных
сроков
Задача 5
Минимизация суммарного
взвешенного запаздывания
выполнения заданий, если для
некоторых заданий
директивные сроки не могут
быть нарушены
Назначение
агрегированных работ
по Алгоритму 2
Задача 6
Максимизация абсолютной
прибыли для заданий,
выполняемых без
запаздывания относительно
директивного срока
Задача 7
Минимизация суммарного
взвешенного опережения и
запаздывания относительно
директивных сроков
Назначение
агрегированных работ
по Алгоритму 3
Принятие решений
по плану выполнения
агрегированных работ
Назначение работ на
выполнение на ресурсы по
критериям 1–7
(с обобщением на 31 критерий)
Анализ плана выполнения работ
Рис. 9.1 – Схема взаимосвязи алгоритмов решения задач в иерархической
модели планирования и управления
9.3 Минимизация суммарного взвешенного момента окончания выполнения заданий при отношении порядка, заданном ориентированным
ацикличным графом, если для всех вершин графа, кроме конечных,
вес равен нулю
Задача МВМН является частным случаем задачи минимизации суммарного
взвешенного момента окончания выполнения заданий с различными весами
одним прибором при отношении порядка, заданном ориентированным ацикличным графом (МВМ), которая относится к классу труднорешаемых задач.
Результаты исследования и эффективный ПДС-алгоритм решения задачи
МВМ приведены в главе 2. Для удобства изложения материала задача МВМН
формулируется с использованием терминологии, принятой в главе 2.
656
Алгоритмическое обеспечение трехуровневой иерархической модели…
II уровень
I уровень
III уровень
Построение плана выполнения агрегированных работ
мультиресурсами
Построение агрегированной модели
Построение пооперационного
плана
В
А
Входная
(пользовательская)
модель
Технологическая
агрегация
(формирование
агрегированных работ)
Конструкторская
агрегация (в пределах
подграфов)
Агрегированная
модель
Выбор критерия
оптимизации
Задача 1
Выбор алгоритма
распреде- ления в
соответствии с
критерием оптимизации
Минимизация суммарного
взвешенного момента
окончания выполнения
заданий (МВМ)
Б
Распределение полученного
на графе на критических
путях расписания по
мультиресурсам
Задача 2
Выполнение заданий без
нарушения директивных
сроков (планирование
«точно в срок»)
Проверка соответствия
полученного плана и
агрегированной модели
Задача 3
Минимизация суммарного
взвешенного момента
окончания выполнения
заданий, если для некоторых
заданий не могут быть
нарушены директивные сроки
Нет
Задача 4
Минимизация суммарного
взвешенного запаздывания
выполнения заданий
относительно директивных
сроков
Формирование нового
графа на критических
путях с общими
вершинами
Задача 5
Построение
графа на критических
путях
с общими вершинами
Минимизация суммарного
взвешенного запаздывания
выполнения заданий
относительно директивных
сроков, если для некоторых
заданий директивные сроки не
могут быть нарушены
Задача 6
Решение задачи МВМН
А
Максимизация абсолютной
прибыли для заданий,
выполняемых без
запаздывания относительно
директивного срока
Задача 7
Минимизация суммарного
взвешенного опережения и
запаздывания относительно
директивных сроков
Назначение работ на
выполнение с привязкой
к ресурсам по критериям
1–7 (с обобщением на 31
критерий оптимальности)
План выполнения
агрегированных
работ
мультиресурсами
Пооперационный
план (выходная
модель)
Блок принятия решений
Имеется
несоответствие?
Да
Дезагрегация
мультиресурсов и
агрегированных работ
Распределение полученного
полного расписания по
мультиресурсам
План удовлетворяет
требованиям?
Нет
Заключительный анализ
плана выполнения работ
Да
В
Решение задачи МВМН
Корректирование
агрегированной
модели
Нет
Проводить
распределение на
полном графе?
Б
Да
Дополнение полученного
расписания вершинами,
не лежащими на
критических путях
Выбор алгоритма
распреде- ления в
соответствии с
критерием оптимизации
Рис. 9.2 – Общая схема решения задач планирования на основе иерархической модели планирования и управления
657
Глава 9
Постановка задачи. На множестве заданий J = {j1, j2, ..., jn} отношение порядка задано ориентированным ацикличным графом G. Для каждого задания j
графа G известна длительность выполнения lj, для каждой конечной вершины
графа (не имеющей преемников) задан вес j, для остальных вершин вес равен
нулю. Необходимо найти последовательность выполнения заданий такую, чтобы достигался минимум функционала:
 C
j
j
 min .
В данном параграфе под обозначением i имеем в видуi(T) (см. п. 9.2.2).
Для задачи в такой постановке на основании исследования свойств задачи
МВМ разработан эффективный быстродействующий полиномиальный эвристический алгоритм, позволяющий решать реальные практические задачи большой
размерности.
Здесь под заданиями понимаются агрегированные работы. Граф G – граф, построенный на критических путях заданий. Общие вершины на графе указывают
общие агрегированные работы для различных комплексов работ (см. п. 9.2.1).
Основные определения. Пусть j и ji обозначают номер задания в соответствии с индексацией, заданной функционалом;
j[g ]
– номер задания, стоящего в
некоторой рассматриваемой последовательности на позиции g;
j[pk ]
– задание,
находящееся в последовательности на позиции k и имеющее номер p в множестве J. Введем следующие определения [194].
Определение 9.3. Пусть на множестве заданий J задано отношение частичного
порядка ориентированным ацикличным графом G. Факт предшествования задания
jk заданию jl обозначим jk  jl. Если jk  jl и не существует такого jz, что jk  jz, jz  jl,
то jk будем называть непосредственным предшественником jl, обозначив jk  jl.
Определение 9.4. Последовательность заданий  = (j[1], j[2],... j[g]), где j[g] –
задание, занимающее позицию g в последовательности , называется допустимой, если при j[k]  j[l] обслуживание задания j[k] согласно этой последовательности завершается до начала обслуживания задания j[l].
658
Алгоритмическое обеспечение трехуровневой иерархической модели…
Определение 9.5. Последовательностью k  , готовой к выполнению в
заданный момент времени d относительно начальной последовательности на
интервале
0, d ,
называется такая допустимая последовательность, у которой к
моменту времени d выполнены все предшественники первого задания этой последовательности, и к моменту выполнения любого задания j   выполнены
все его предшественники.
Определение 9.6. Подпоследовательность заданий (j[g]) = (j[r], j[r+1],..., j[g–1],
j[g]) в последовательности  называется элементарной конструкцией заданий,
если для каждого задания j[l]  (j[g]) выполняется: j[l]  j[g], j[r-1]
l  r, g  1 ,
j[g] при g > l,
где j[g] – задание, занимающее в элементарной конструкции заданий
(j[g]) самую позднюю позицию g; l, g – номера позиций, занимаемых заданиями j[l], j[g] в последовательности .
Таким образом, в элементарную конструкцию объединяются зависимые
задания, находящиеся в определенном порядке предшествования.
Определение 9.7. Приоритетами задания и элементарной конструкции назовем величины Pj, P, определяемые следующим образом:
jg   J k Pj    j  / l j  ; P    j   / L  j   ,
g
g
g
g
g
где Jk – множество конечных вершин графа;  j  , l j  – вес и длительность выg
g
полнения задания j[g] соответственно;
g
  j g      ji 
i r
g
L  j g     l ji  –
i r
– вес элементарной конструкции заданий (j[g]);
длительность выполнения элементарной конструкции (j[g]).
Определение 9.8. Последовательность заданий , построенная на множестве заданий J с отношением порядка, заданным ориентированным ацикличным графом, называется приоритетно-упорядоченной (p-упорядоченной), если
она соответствует следующим условиям: первые позиции в этой последовательности занимает подпоследовательность 1, готовая к выполнению в момент t = 0 и имеющая наивысший приоритет из всех возможных допустимых
659
Глава 9
подпоследовательностей, организованных на множестве заданий J, готовых к
выполнению в момент t = 0. Если подпоследовательность  содержит независимые группы взаимосвязанных заданий, то они должны быть упорядочены по
невозрастанию значений их приоритетов. За подпоследовательностью 1 следует подпоследовательность 2, построенная по аналогичным правилам, готовая
к выполнению после выполнения 1 и имеющая высший приоритет из допустимых подпоследовательностей, организованных на множестве заданий J \ 1.
Следующие позиции в последовательности  занимает подпоследовательность
3, определяемая по правилам, изложенным выше. Процесс продолжается, пока не будет рассмотрено все множество заданий J.
Определение 9.9. Две элементарные конструкции заданий (j[g]), (j[f])
называются независимыми, если ни для какой пары заданий j[k]  (j[g]),
j[l]  (j[f]) не выполняются условия предшествования.
Определение 9.10. Интервалом переноса отдельного задания j[k] в последовательности для более раннего его выполнения называется максимальный
интервал, при переносе на который задания j[k] допустимость последовательности  не нарушается.
Например, интервал переноса задания j*[g] на позицию p+1 в последова1
r
g 1
*
тельности = ( j[11],..., j[pp], j[p+
p+1], ..., j[ r ] ..., j[ g 1], j[ g ] ) определяется выражением
g 1
I j* =
[g]

k=p+1
l j[ k ]
,
где p+1, g–1 – позиции, занимаемые заданиями, для которых выполняются
условия: k  p  1, g  1 jk
jg , где символ
означает отсутствие отношения
предшествования.
Последовательность заданий  после выполнения процедуры переноса
преобразуется в последовательность
1
g 1
= ( j[11],..., j[pp], j[*p+1], j[p+
p+2],..., j[ g ] ).
Для элементарной конструкции заданий (j[g]) = (j[r], j[r+1], ..., j[g–1], j[g]) интервал переноса I определяется так:
660
Алгоритмическое обеспечение трехуровневой иерархической модели…
r 1
I α=

k=p+1
l j[ k ]
.
Определение 9.11. Интервалом эффективного переноса отдельного задания
j[g] или элементарной конструкции заданий (j[g]) называется интервал, при переносе на который задания j[g] или элементарной конструкции (j[g]) значение
функционала (суммарный взвешенный момент окончания выполнения)
уменьшается на максимальную величину.
Интервал эффективного переноса для задания j[g] определяется выражением

 g 1
I эj[ g ]=  l j[ k ]

k=
g 1
g 1



 ωj  l j  l j  ωj  0   max
,
[g]
[k ]
 [ g ] k= [ k ]

k=




где  – позиция встраивания задания j[g].
Для элементарной конструкции заданий (j[g]) интервал эффективного переноса (j[g]) определяется

 r 1
э
Iα
 j[ g ] =  l j[ k ]

k=q

r 1
r 1


 Ωα j   l j  Lα j   ωj  0   max
,
[g]
[k ]
[g]
[k ]


k=q
k=q




где q – позиция встраивания задания j[r]  (j[g]), (j[g]) = (j[r], j[r+1],..., j[g–1], j[g]).
В рассматриваемой задаче МВМН построение p-упорядоченного расписания выполняется на основе разработанного ПДС-алгоритма задачи МВМ (глава 2) и заключается в том, что на каждой итерации k на основе очередного рассматриваемого задания j[g] по определенным правилам строится структура взаимосвязанных заданий (элементарная, простая или вложенная конструкция),
которая встраивается в соответствии с приоритетом в допустимой последовательности на более ранние позиции, не нарушая допустимости всей последовательности. Предложенный алгоритм не является точным, так как если для построения оптимального расписания возникает необходимость комбинаторного
перебора построения различных типов конструкций, то этот перебор не выполняется. Несмотря на это, алгоритм остается эффективным, так как по результатам статистических исследований такой перебор построения конструкций возникает редко. В предложенном алгоритме учитываются специфические
661
Глава 9
свойства задачи, что существенно влияет на его быстродействие и позволяет
решать реальные практические задачи с десятками тысяч переменных.
Алгоритм решения задачи
Алгоритм А решения задачи состоит из трех блоков: блок упорядочения
(алгоритм А1), блок оптимизации (алгоритм А2) и блок переупорядочения на
интервалах переноса (алгоритм А1.1) [56].
Алгоритм А1. Блок упорядочения
1. Упорядочим конечные вершины j графа G, для которых j > 0, по убыванию значений j. Обозначим полученную последовательность уп.
2. Просматриваем последовательность уп с начала.
3. Выбираем первое задание последовательности j[1].
4. Из множества заданий J \ j[1] выбираем такие задания j[r], r =
2,n ,
которые
являются непосредственными предшественниками j[1].
5. Строим новую последовательность  упн следующим образом. Встраиваем
задания j[r] перед заданием j[1] в соответствии с их длительностью выполнения
(по неубыванию значений длительности, не нарушая допустимость последовательности).
6. Для каждого встроенного задания, в свою очередь, находим непосредственных предшественников и аналогичным образом (п.3–5) встраиваем их в
новую последовательность.
7. Процедуры 3–6 выполняются для оставшихся заданий последовательности до тех пор, пока не будет выстроена вся элементарная конструкция заданий, необходимых для выполнения задания j[1].
8. Переходим к следующему заданию последовательности уп – j[2] и, если
это задание отсутствует в последовательности  упн , включаем его в эту последовательность.
Переходим к п. 4 и встраиваем перед заданием j[2] элементарную конструкцию заданий, необходимых для его выполнения, исключая те задания, которые
присутствуют в последовательности на более ранних позициях.
662
Алгоритмическое обеспечение трехуровневой иерархической модели…
9. Если все задания множества J просмотрены и построена последовательность  упн , алгоритм заканчивает работу.
Последовательность  упн является допустимой согласно построению. Для
построения оптимального расписания выполняется блок оптимизации.
Исследование свойств последовательности  упн .
Рассмотрим последовательность  упн , полученную в результате блока упорядочения. Для этой последовательности справедливо:
Свойство 9.1. В последовательности  упн в элементарную конструкцию заданий (j[k]), k = 1,n , при построении включаются все задания j[l], l= r, k  1 , для
которых справедливо:
 j[l ]  0,
В
соответствии
с
j[l ]
j[ k ] ,
определением
j[ r 1]
9.6,
j[ k ] .
последовательность
заданий
(j[k]) = (j[r], j[r+1],..., j[k]) в последовательности называется элементарной конструкцией заданий, если для каждого задания j[l]  (j[k]) выполняется
j[l]  j[k], k > l, l =
r, k  1 .
Здесь j[k] – задание, занимающее в элементарной конструкции заданий
(j[k]) самую позднюю позицию k; l, r – номера позиций, занимаемых заданиями j[l], j[r] в последовательности 
н
Следовательно, в последовательности  уп
элементарная конструкция зада-
ний (j[k]) строится следующим образом: рассматриваем последовательность
н
с позиции k до первой позиции. В элементарную конструкцию (j[k])
 уп
включаем задания j[l], для которых справедливо:
 j[l ]  0; l  r, k 1; j[l ]
j[k ] ; j[r 1]
j[ k ] .
Правило построения элементарной конструкции остается справедливым
для всех модификаций последовательности  упн , полученных в результате выполнения описанных выше перестановок.
663
Глава 9
Свойство 9.2. Интервалом переноса элементарной конструкции (j[g]) на
более ранние позиции называется интервал, определяемый позициями
p  1, g  1 ,
для которого справедливо: j[l]
(j[g]), l= p  1, g  1 , p – позиция, зани-

маемая заданием, являющимся общей вершиной на графе критических путей,
j[p]  (j[g]). В соответствии с определением, интервал переноса – максимальный интервал, при переносе на который элементарной конструкции (j[g]) допустимость последовательности не нарушается. По условию задачи веса всех
заданий, кроме конечных вершин графа, равны нулю. Справедливо: j[s]
если  j
[s]
 0 ,  j[ k ]  0 .

j[k],
В соответствии с правилами перестановок задание с нуле-
вым весом может занимать более раннюю позицию по отношению к элементарной конструкции заданий, связанной с ним отношением порядка, только в
том случае, если это задание является «общей вершиной».
Алгоритм А2. Блок оптимизации
1. Просматриваем последовательность  упн с начала. Пусть рассматривается
очередное задание j, занимающее позицию g,  j
[g]
0.
занимающие предшествующие позиции на интервале
Просматриваем задания,
1, g  1 ,
и строим элемен-
тарную конструкцию зависимых заданий (j[g]) = (j[r], j[r+1], ..., j[g–1], j[g]).  j[k],
k=
r, g ,  j[ k ]  0 , j[ r 1]
j[ g ] .
2. Определяем параметры, характеризующие элементарную конструкцию
заданий (j[g]):
  j[ g ]  
 j ;
 
j j[ g ]
L  j[ g ]  
 .
lj
j j[ g ]
 
3. Определяем интервал переноса для элементарной конструкции (j[g]).
С этой целью просматриваем задания на интервале
1, r  1 ,
являющиеся
«общими вершинами», и ищем задание, предшествующее по выполнению элементарной конструкции (j[g]) и занимающее самую позднюю позицию.
4. Определяем интервал эффективного переноса:
r 1
э
Iα
 j[ g ] =  l j[ k ]
k=q
664
,
Алгоритмическое обеспечение трехуровневой иерархической модели…
где q – позиция, на которой разность
r 1
r 1
  j   l j[ k ]  L  j    j[ k ]  0 ,  j[ q ]  0
[g]
[g]
k=q
k=q
достигает максимального значения.
Пусть эта разность максимальна на позиции f+1. Переходим к п.5.
5. Встраиваем элементарную конструкцию (j[g]) на позицию f+1, определенную интервалом эффективного переноса таким образом, чтобы позицию
f+1 заняло задание j[r]  (j[g]), (j[g]) = (j[r], j[r+1], ..., j[g–1], j[g]).
Возможны следующие случаи:
а) на позициях
s, f
находится элементарная конструкция (j[f]) = (j[s], j[s+1],
..., j[f]), для которой выполняется условие (j[f])  (j[g]);
б) на позиции f находится задание j[f], для которого выполняется условие
j[f]

(j[g]).
В случае а) переходим а к п. 6, иначе к п. 16, рассматривая в качестве конструкции К1 элементарную конструкцию (j[g]).
6. Проверяем условие:
 β j    j 
[f]
[g]
.

Lβ j 
L  j 
[f]
[g]
Если это условие выполняется, переходим к п. 7, иначе к п. 16, рассматривая в качестве конструкции К1 элементарную конструкцию (j[g]).
7. Строим элементарную конструкцию заданий (j[f+n1]), включающую элементарные конструкции(j[f]) и (j[f+n1]), где n1 – число заданий, входящих в
элементарную конструкцию (j[g]). Определяем приоритет элементарной конструкции (j[f+n1]):

L

 j[ f n

1
 j[ f n
1
]
]



j
[ f n ]
1
  j[ f ]
 Lβ j 
  j[ f n ] 
[f]
1
L
.
8. Определяем для элементарной конструкции (j[f+n1]) интервал эффективного переноса по правилам, описанным в п. 3, 4.
665
Глава 9
9. Встраиваем элементарную конструкцию (j[f+n1]) на позиции, определенные интервалом эффективного переноса. В результате такого встраивания элементарная конструкция (j[f+n1]) преобразовалась в элементарную конструкцию
(j[f+n1–n2]), где n2 – число заданий j 
I 2Э .
Свойство 9.3. Приоритет элементарной конструкции (j[f+n1–n2]) могут повысить только элементарные конструкции заданий, построенные на конечных
вершинах графа G.
10. Все задания, следующие за элементарной конструкцией (j[f+n1–n2]), переупорядочиваем по алгоритму А1.1 (описанному ниже).
11. Строим конструкцию заданий К1 по следующим правилам.
Для каждой позиции k на интервале
для которой  j  0 ,
f  n1  n2  1, g ,
[k ]
находим значение M(k) из выражения
k
M (k ) 

l  f  n1  n2 1
k

 j  
l  f  n1  n2 1
и определяем
[l ]
l j[ l ]  L

j
[ f n n ]
1 2
 j[ f  n
1
n ]
2


–

L

1

1
 j[ f n
 j[ f n
n ]
2
n ]
2


M  max M (k ) .
k
Пусть максимальное значение М(k) достигается на позиции t. Переходим к
п. 12. Если приоритет элементарной конструкции  посредством включения в
нее дополнительных заданий увеличить не удалось, переходим к п. 16.
12. Строим конструкцию заданий К1. Определяем ее приоритет. В конструкцию К1 включена элементарная конструкция (j[f+n1–n2]) и элементарные
конструкции заданий на интервале
f  n1  n2  1, t ,
построенные на конечных
вершинах графа, для которых задания, принадлежащие элементарной конструкции (j[f+n1–n2]), являются общими вершинами на этом графе, либо связаны
отношениями порядка с другими общими вершинами, входящими в состав
вышеуказанных элементарных конструкций.
13. Определяем для конструкции К1 интервал эффективного переноса по
правилам, описанным в п. 3, 4.
666
Алгоритмическое обеспечение трехуровневой иерархической модели…
14. Встраиваем конструкцию К1 на позицию, определенную интервалом
эффективного переноса.
15. Все задания, следующие за конструкцией К1, до задания, занимающего
позицию g, переупорядочиваем по алгоритму А1.1.
Переходим к п. 5, рассматривая в качестве элементарной конструкции
(j[g]) конструкцию К1.
16. Организуем новую конструкцию заданий К2 следующим образом.
16.1. Просматриваем последовательно задания, занимающие предшествующие позиции по отношению к конструкции К1 и являющиеся «общими вершинами», связанными с конструкцией К1 отношением порядка.
16.2. Ищем задание j[z], для которого выполняется условие j[z]  К1.
Свойство 9.4. Задание j[z] является «общей вершиной» на графе критических путей G.
Возможны следующие случаи:
а) задание j[z], для которого выполняется вышеуказанное условие, не
найдено. Переходим к п. 23;
б) задание j[z] найдено и занимает позицию z. Переходим к п. 17.
17. Организуем элементарную конструкцию заданий (j[z]).
18. Определяем параметры элементарной конструкции (j[z]):
   j    j[ z ] ;
[z]
L  j[ z ]  
 .
lj
j j[ z ]
 
19. Проверяем условие
  j  
K
[z]
 1.
L  j 
LK1
[z]
Если это условие не выполняется, переходим к п. 16 и ищем следующее задание j[z'], для которого выполняется условие j[z']  К1. При выполнении условия
j[z']  К1 переходим к п. 20. Если такое задание не найдено, переходим к п. 23.
20. Если приоритет конструкции К1 больше приоритета элементарной конструкции (j[z]), строим конструкцию К2, включающую конструкцию К1, эле-
667
Глава 9
ментарную конструкцию (j[z]) и задания, занимающие промежуточные позиции между конструкцией К1 и элементарной конструкцией (j[z]).
21. Определяем для конструкции К2 интервал эффективного переноса, способом, описанным в п. 3, 4 настоящего алгоритма.
22. Переупорядочиваем задания, следующие за конструкцией К2, до позиции g, по алгоритму А1.1. Переходим к п. 5. В качестве элементарной конструкции (j[g]) в п.5 рассматриваем конструкцию К2.
23. Переходим к следующему заданию, занимающему позицию g+1. Если
 j[ g 1]  0 ,
переходим к п. 2. Начало новой итерации.
Если  j
[ g 1]
0,
переходим к п. 23 и рассматриваем задание, занимающее по-
зицию g+2.
Если g+1 > n, конец работы алгоритма.
Свойство 9.5. Все перестановочные процедуры алгоритма А выполняются
только для структур (задание, элементарная конструкция заданий, конструкции К1, К2), нагруженных весом.
Использование свойств 9.1–9.5 в приведенном алгоритме позволило существенно снизить его трудоемкость для решения исследуемой задачи и решить
задачи реальной практической размерности (десятки тысяч переменных).
Алгоритм А1.1. Блок переупорядочения на интервалах эффективного
переноса
Алгоритм А1.1 предназначен для упорядочения заданий на интервалах эффективного переноса после выполнения процедуры эффективного переноса.
Просматриваем задания последовательно на интервале эффективного переноса IЭ, начиная с задания, занимающего самую раннюю позицию. Пусть мы
рассматриваем очередное задание j[k]  IЭ.
1. Организуем элементарную конструкцию зависимых заданий (j[k]).
2. Определяем параметры, характеризующие элементарную конструкцию
заданий (j[k]):
668
Алгоритмическое обеспечение трехуровневой иерархической модели…
L  j  
[k ]


j j[ k ]

lj ;
  j  
[k ]


j j[ k ]

j .
3. Определяем интервал переноса для элементарной конструкции заданий
(j[k]).
4. Определяем интервал эффективного переноса для элементарной конструкции заданий (j[k]).
5. Встраиваем элементарную конструкцию заданий (j[k]) на позицию,
определенную интервалом эффективного переноса.
6. Переходим к следующему заданию j[k+1]  IЭ, идем на п. 1. Если просмотрены все задания j  IЭ, конец работы алгоритма.
9.4 Исследование свойств и решение задачи «Минимизация суммарного
опережения и запаздывания относительно директивных сроков при
выполнении независимых заданий одним прибором»
Одним из важных критериев, включенных в трехуровневую модель, является минимизация суммарного штрафа за опережение и запаздывание относительно директивных сроков (задача 7). Одна из причин этого – возрастающее
давление конкуренции на рынках: фирмы должны предложить большое разнообразие различных и индивидуальных изделий, в то время как клиенты ожидают, что заказанные товары будут поставлены своевременно. Таким образом,
можно ожидать, что работы будут своевременными, так как поздние поставки,
так же, как и ранние, рассматриваются как нежелательные [112, 194, 198, 139].
В то время как опережения работ связаны с затратами на складирование, запаздывания работ связаны со штрафами, такими как потеря доброжелательности клиента и потеря заказов. Поэтому минимизация опережения и запаздывания очень важна в в условиях рыночной экономики.
В данном параграфе мы рассматриваем частный случай общей задачи – задачу составления расписаний по критерию минимизации суммарного опережения и запаздывания при выполнении заданий одним прибором (МОЗ), которая может быть сформулирована таким образом.
669
Глава 9
Постановка задачи. Множество из n независимых заданий J = {j1, j2, ..., jn}
должно быть назначено без прерываний на одном приборе, который может работать не более, чем с одним заданием одновременно. Прибор и задания предполагаются непрерывно доступными с момента времени ноль, а простои прибора не допускаются. Задание j, где j = 1, 2, ..., n, требует времени обработки pj и в
идеале должно быть закончено в свой директивный срок dj. Для любого заданного расписания опережение и запаздывание задания j могут быть определены
выражениями (9.5) и (9.6). Цель заключается в том, чтобы найти расписание,
минимизирующее суммарное опережение и запаздывание всех задач:
 E j  T j ,
n
(9.4)
j 1
где опережение и запаздывание определяются как, соответственно,
Ej = max(0, dj – Cj) = (dj – Cj)+,
(9.5)
Tj = max(0, Cj – dj) = (Cj – dj)+.
(9.6)
Используя систему обозначений Лоулера и др. [152], статическую задачу
составления расписаний МОЗ можно описать как 1||(Ej + Tj). Бейкер и Скуддер
[87] приводят обзор публикаций по задаче составления расписаний опережения/запаздывания, описывая разные модели опережения/запаздывания и разные
штрафы за опережение/запаздывание заданий. Когда директивные сроки заданий определены, но различны, задачи опережения/запаздывания являются
NP-полными [121]. Яно и Ким [205] разработали эвристику для частичного случая взвешенных штрафов, в котором вес пропорционален длительностям заданий. Они использовали процедуру попарной перестановки, чтобы улучшить
начальные эвристические решения.
Оу и Мортон [169] исследуют функцию на основе приоритета и разновидность фильтрованного лучевого поиска для задач опережения/запаздывания,
делая вывод, что качество решения значительно ухудшается, если затраты на
опережение заданий игнорируются в пользу рассмотрения только стоимости запаздывания. Планировщик Дэвиса и Кейнта [105] может быть встроен в существующее эвристическое решение для улучшения качества расписания МОЗ при
низких вычислительных затратах. Шварц и Мухопадьяй [191] разработали под670
Алгоритмическое обеспечение трехуровневой иерархической модели…
ход группировки (кластеризации) для определения оптимального времени запуска для заданий на примере задачи МОЗ с предположением, что последовательность заданий известна априори. Подход группировки осуществляет оптимальный выбор времени для 500 заданий за несколько секунд вычислительного
времени. Сридхаран и Жоу [187] используют эвристику диспетчирования для
задач МОЗ, допускающую вставку простоя прибора, если это необходимо.
Наш подход отличается от приведенного в работе [191] тем, что последовательность заданий не должна быть определена априорно. Ниже приведен
разработанный приближенный алгоритм решения задачи МОЗ. Экспериментальные результаты показали получение эффективных расписаний за короткое
время вычислений.
Алгоритм решения задачи МОЗ
Алгоритм базируется на следующих утверждениях.
Пусть j и ji обозначает номер задания в соответствии с индексацией, заданной функционалом;
j[g ]
– номер задания, стоящего в некоторой рассматри-
ваемой последовательности на позиции g. Обозначим rj = max(0, dj – Cj) – резерв задания j. Очевидно, rj = Ej.
Справедливы следующие леммы [169]:
Лемма 1. Последовательность, отсортированная по неубыванию значений
длительности выполнения, не имеющая опережающих работ, является оптимальной по критерию МОЗ.
Лемма 2. Последовательность, отсортированная по невозрастанию значений длительности выполнения, не имеющая запаздывающих работ, является
оптимальной по критерию МОЗ.
Примечание. Очевидно, авторы статьи [169] имели в виду, что лемма 2
справедлива для каждого конкретного момента начала выполнения всей последовательности заданий.
Обозначим rmin = min{rj}; Nr – число заданий с резервами (rj > 0); Nз – число
запаздывающих заданий (в число запаздывающих включаются задания с нулевым резервом).
671
Глава 9
Утверждение 9.2 [15] (использование резервов опережающих заданий). Если в последовательности  выполняется Nr > Nз, то при увеличении начала выполнения заданий на величину, равную rmin, значение функционала опережения/запаздывания уменьшается на величину (Nr – Nз) rmin.
Исходная последовательность оптимизируется по критерию МСЗ. Если в
полученной последовательности резервы отсутствуют, то эта последовательность оптимальна по критерию МОЗ. На каждой итерации при условии Nr ≥ Nз
увеличиваются моменты начала выполнения заданий в текущей последовательности на rmin, и эта последовательность снова оптимизируется по критерию
МСЗ. Такие процедуры выполняются до тех пор, пока в последовательности,
полученной после оптимизации по критерию МСЗ, не выполнится условие Nr
< Nз. Полученную последовательность обозначаем R и проверяем условия
утверждения 9.3.
Утверждение 9.3 [15] (признак оптимальности последовательности R). Если в последовательности R резервы отсутствуют, то она оптимальна по критерию МОЗ.
Справедливость утверждения 9.3 основана на положениях, сформулированных в лемме 1, утверждении 9.2 и оптимальности последовательности R по
критерию МСЗ.
Описание алгоритма
Перед началом алгоритма оптимизируем последовательность  по алгоритму решения задачи МСЗ, приведенному в главе 1 (получаем последовательность 0). Если в этой последовательности резервы отсутствуют, то эта
последовательность оптимальна по критерию МОЗ.
Алгоритм состоит из k однотипных итераций, на каждой итерации увеличивается момент начала выполнения заданий рассматриваемой последовательности, если это приводит к уменьшению значения функционала, и полученная
последовательность оптимизируется по критерию МСЗ. Пусть уже выполнена
k–1 итерация. Рассматриваем последовательность k–1.
672
Алгоритмическое обеспечение трехуровневой иерархической модели…
Блок 1
1
Анализируем последовательность k–1. Определяем Nr – число заданий с
резервами и Nз – число заданий, которые запаздывают или выполняются
точно в срок. Проверяем условие Nr  Nз.
2
Если Nr < Nз, то R = k–1, переходим на шаг 4.
3
Если Nr  Nз, выбираем задание с минимальным резервом rmin > 0 из последовательности k–1. На величину rmin увеличиваем момент начала
выполнения всех заданий последовательности k–1, полученную последовательность k оптимизируем по критерию МСЗ. Если в этой последовательности резервы отсутствуют, то эта последовательность оптимальна по критерию МОЗ, конец алгоритма. Иначе k = k + 1. Переходим на
шаг 1, начало следующей итерации.
4
Оптимизация последовательности R по алгоритму блока 2.
Блок 2
Алгоритм состоит из n–1 итерации, на каждой итерации определяется
наиболее эффективная позиция встраивания очередного задания на более раннюю позицию, если это приводит к уменьшению значения функционала. Пусть
уже выполнена k–1 итерация. Для задания j[k] на интервале [1, k–1] ищем позицию p, на которой значение функционала на интервале [p, k] уменьшается максимально:
k
 d ji   C ji   d jk   C jk  
i p
k 1
 l ji  
i p
k 1
 d j   C j   l j 
i p
i
i
k
 max .
Встраиваем задание j[k] на позицию p, выполняем свободные перестановки
(см. определение 1.8), k = k + 1. Если k > n, конец работы алгоритма. Иначе переходим к следующей итерации.
Пример работы алгоритма приведен в табл. 9.1, 9.2, 9.3.
673
Глава 9
Таблица 9.1 – Исходные данные (уп) для примера решения задачи МОЗ
j
4
6
8
7
3
1
5
2
lj
79
83
88
96
102
121
130
147
dj
534
604
987
951
668
528
605
537
Cj | dj–Cj |
79
455
162 442
250 737
346 605
448 220
569
41
699
94
846 309
Таблица 9.2 – Последовательность *= R – результат выполнения блока 1
j
4
1
2
6
3
5
7
8
lj
79
121
147
83
102
130
96
88
dj
Cj | dj–Cj |
534 253
281
528 374
154
537 521
16
604 604
0
668 706
38
605 836
231
951 932
19
987 1020
33
Таблица 9.3 – Оптимальная последовательность опт– результат выполнения блока 2
j
2
1
4
6
3
5
7
8
lj
147
121
79
83
102
130
96
88
dj
Cj | dj–Cj |
537 321
216
528 442
86
534 521
13
604 604
0
668 706
38
605 836
231
951 932
19
987 1020
33
Таким образом, мы применили следующие эволюционные стратегии для
решения задачи МОЗ: минимизация суммарного запаздывания за счет резервов
незапаздывающих заданий; определение оптимального момента запуска на
выполнение; оптимизация за счет вставки заданий на более ранние позиции; а
также показали, что применение этих стратегий является эффективным для
нахождения расписаний, близких к оптимальным.
674
Алгоритмическое обеспечение трехуровневой иерархической модели…
9.5 Алгоритмизация процесса принятия решений
В блоке принятия решений (см. рис. 9.2) процесс принятия решений разделен на
два этапа. На этапе 1 формируются допустимые планы выполнения работ, на этапе 2
выбирается один из них, который и реализуется в течение планового периода.
Этап 1
На основе результатов прогноза рыночной конъюнктуры, сформированного портфеля заказов, используя взаимосвязанные модели первого и второго
уровня трехуровневой модели планирования, реализуются допустимые планы
выполнения работ, каждый из которых может быть принят к реализации в плановом периоде. При этом могут быть использованы следующие возможности
алгоритмического обеспечения первого и второго уровня.
1) Допустимые планы выполнения работ генерируются с помощью взаимосвязанных моделей первого и второго уровня (планы выполнения агрегированных работ мультиресурсами) для того, чтобы на этапе 2 процесса принятия
решений максимально облегчить эксперту получение оценки гарантированного выполнения сравниваемых планов в заданные сроки.
2) Критерий 1 (см. п. 9.2.2) позволяет строить план выполнения работ, не
привязываясь к конкретному заказчику, ориентируясь только на прогнозируемую рыночную конъюнктуру.
3) Критерий 3 (см. п. 9.2.2) является смешанным: наряду с конкретными
заказчиками может реализовываться продукция, не привязанная к конкретному
потребителю.
4) На этапе 1 значения критериев 4, 5, 7 (см. п. 9.2.2) интерпретируются как
уменьшение прибыли, если предлагаемые заказчиками ограничения по срокам
не могут быть выполнены производственной программой. После окончательного согласования с заказчиками ограничений по срокам (они могут быть новыми, и им соответствует меньшая прибыль) штрафы за их реальное невыполнение по плану работ, выбранному на этапе 2, могут быть существенно бóльшими.
675
Глава 9
5) Если генерируемые планы выполнения работ по критериям 2–7 (см. п.
9.2.2) реализуют недостаточную прогнозируемую прибыль, либо не полностью
удовлетворяют ограничениям (не все завершающие работы могут быть выполнены точно в срок), анализируется возможность увеличения ресурсов системы,
возможны изменения сетевой технологии, и соответствующий план выполнения работ генерируется заново.
6) В приоритеты аппроксимирующих МВМ, базирующихся на четырех основных критериях и их комбинациях (кроме функционалов, включающих критерий «точно в срок»), прибыль не входит в явном виде, так как не учтены затраты и постоянная составляющая дохода. Поэтому в оптимальном расписании
первого уровня невозможно увеличить прибыль за счет исключения заданий,
занимающих последнюю позицию. Такая задача очевидным образом решается
в блоке принятия решений. В этом случае на вход системы подается новое
множество заданий для анализа эффективности.
7) С точностью до процедуры изменения ресурсов и сетевой технологии
процесс генерации допустимых планов выполнения работ является полностью
детерминированным и однозначно задан взаимосвязанными моделями трехуровневой системы планирования.
Этап 2
Из множества допустимых планов выполнения работ выбирается один, который и будет реализован в плановом периоде. Казалось бы, очевидное решение – выбирается тот план, которому соответствует максимальная ожидаемая
прибыль, – тем не менее, является неверным.
Дело в том, что если плановый период является продолжительным (единица измерения не меньше месяца), то на реальную прибыль от реализации допустимого плана выполнения работ влияет такое количество неформализованных
либо принципиально не измеряемых заранее факторов (часть из которых
сформулирована ниже), что задача выбора лучшего плана выполнения работ из
сгенерированного множества допустимых представляет собой проблему, сформулированную и эффективно решенную в главе 7.
676
Алгоритмическое обеспечение трехуровневой иерархической модели…
Действительно, учитывая, что планируемая прибыль от реализации любого
допустимого плана выполнения работ является допустимой, необходимо выбрать тот из них, у которого риск от существенного уменьшения планируемой
прибыли минимальный. Сформулирована задача выбора наилучшей альтернативы из достаточно большого числа альтернатив (генерация большого количества допустимых планов выполнения работ не требует значительных ресурсов)
в соответствии с неформализованной глобальной целью. Ее предлагается решать с помощью модифицированного метода анализа иерархий Саати. Основной сложностью, существенно влияющей на эффективность использования
метода анализа иерархий и его модификации, является построение дерева
иерархии, адекватного рассматриваемой задаче.
Очевидно, что каждой конкретной системе планирования соответствует свое
собственное дерево иерархий. Однако можно предложить (рис 9.3) инвариантное
дерево иерархий, которое может быть использовано для решения реальных задач
либо быть хорошей основой для построения индивидуального дерева иерархий.
E 11
1 уровень
E12
2 уровень
3 уровень
4 уровень
E 13
E 23
А1
E 33
E 22
E 43
E53
E 63
Аi
E 73
E 83
Аm
Рис. 9.3 – Дерево иерархий
Локальные вклады критериев Å13  Å43 в критерий Å 22 равны нулю.
Локальные вклады критериев Å53  Å83 в критерий Å12 равны нулю.
Построенное дерево иерархий соответствует ММАИ (см. параграф 7.4.2,
положение 10).
677
Глава 9
E11 – глобальная цель – найти допустимый рабочий план с минимальным
риском существенного уменьшения планируемой прибыли.
E12 – риск существенного уменьшения планируемой прибыли для плана в
случае его успешного выполнения.
E22 – риск существенного уменьшения планируемой прибыли в случае сры-
ва заданных ограничений по срокам.
E13 – риск существенного уменьшения планируемой прибыли в силу ухуд-
шения рыночной конъюнктуры, как следствие возможного локального (глобального) финансового кризиса.
E23 – риск существенного уменьшения планируемой прибыли в силу воз-
можного появления в планируемом периоде на рынке конкурентно эффективных альтернатив.
E33 – риск существенного уменьшения планируемой прибыли в силу резко-
го увеличения затрат на выполнение допустимого плана, зависящих от возможной реализации ряда (определенных типом системы планирования) факторов, оценка которых не поддается детерминированному прогнозу.
E43 – риск существенного уменьшения планируемой прибыли от возможного
изменения в худшую сторону финансовой стабильности заказчика (заказчиков).
E53 – риск существенного уменьшения планируемой прибыли от непра-
вильной оценки ресурсных, трудовых, наукоемких затрат для выполнения допустимого плана. Фактор является существенным, когда допустимый план
включает в себя выпуск качественно новой продукции.
E63 – риск существенного уменьшения планируемой прибыли от возможно-
го несоответствия качества исходной продукции (полуфабрикатов, комплектующих изделий и т. д.) стандартам, влияющих на значение показателей качества выпускаемой продукции, что может привести к увеличению сроков выпуска результирующей продукции.
E73 – риск существенного уменьшения планируемой прибыли от возможно-
го срыва запланированных сроков поставщиками.
678
Алгоритмическое обеспечение трехуровневой иерархической модели…
E83 – риск существенного уменьшения планируемой прибыли от возможного
ухудшения на плановом периоде функционирования системы ее финансового состояния, что может привести к срыву допустимых сроков плана выполнения работ.
Элементы матриц парных сравнений на четвертом уровне иерархии
 ij , i, j  1, m  i  j  интерпретируются следующим образом: во сколько раз сте-
пень риска существенного изменения прибыли у допустимого плана выполнения работ Ai выше, чем у допустимого плана выполнения работ A j как следствие возможной реализации условий, определяющих критерий Ee3 , e  1,8 .
Элементы матриц парных сравнений на третьем уровне иерархий
 ij , i, j  1, 4  i  j  интерпретируются следующим образом: во сколько раз вклад
критерия Ei3 весомей вклада критерия E 3j в критерий E12 (либо в критерий E22 )
без учета требования о существенном уменьшении планируемой прибыли.
Нормированные локальные веса 1  Ai  , 2  Ai  при значениях Ei2  Ai  и
E22  Ai  (см. параграф 7.4.2, положение 10) окончательно реализуют интеграль-
ный вес альтернативы Ai : E11  Ai   1  Ai  E12  Ai   2  Ai  E22  Ai  ,
i  1, m , веса
1  Ai  , 2  Ai   0 непосредственно определяются экспертным путем и интерпре-
тируются как оценка возможности выполнения или невыполнения плана (альтернативы Ai ). Можно лишь указать очевидную тенденцию: чем стабильнее
финансовое состояние самой системы и экономики в целом, тем больше 1  Ai 
по сравнению с 2  Ai  .
Наименьший риск существенного уменьшения планируемой прибыли
имеют те планы выполнения работ, у которых результирующий вес E11  Ai  является наименьшим.
Пусть достоверно (статистически достоверно) найдены все результирующие веса альтернатив E11  Ai  , i  1, m . Тогда процесс принятия решений реализуется следующим образом.
679
Глава 9
1) Если допустимый план выполнения работ с минимальным результирующим весом имеет максимальную плановую (прогнозируемую) прибыль, то
он и выбирается к исполнению.
2) Если имеется совокупность допустимых планов выполнения работ, для
каждого из которых результирующий вес допустимо не отличается от минимального, то выбирается тот план выполнения работ, которому соответствует
максимальная планируемая прибыль.
Общий случай:
а) учитывая, что у всех планов выполнения работ планируемая прибыль
является допустимой, выбирается та, которой соответствует минимальный результирующий вес;
б) получение результирующих весов существенно упрощает для лица, принимающего решение (ЛПР), нахождение компромисса между желанием получить максимальную прибыль и возможностью понести существенные финансовые потери.
Таким образом, подводя итоги, можно утверждать, что хотя использование
метода анализа иерархий и его модификаций не является единственной возможностью обоснованного выбора плана выполнения работ из множества допустимых в условиях неопределенности, тем не менее, и его реализация является не
только допустимым, но и эффективным способом решения поставленной задачи.
680
Алгоритмическое обеспечение трехуровневой иерархической модели…
СПИСОК ЛИТЕРАТУРЫ НЕ ПЕЧАТАЕТСЯ, НО ДОЛЖЕН БЫТЬ В КОНЦЕ КАЖДОЙ ГЛАВЫ, ЧТОБЫ ПОЛЯ ПРАВИЛЬНО ОБНОВЛЯЛИСЬ
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Адлер Ю.П., Маркова Е.В., Грановский Ю.В. Планирование эксперимента при поиске оптимальных условий. – 2-е изд., перераб. и доп. – М.:
Наука, 1976. – 280 с.
Айвазян С.А. Многомерный статистический анализ // Математическая
энциклопедия / Гл. ред. И.М. Виноградов. – М., 1982. – Т.З. – Стб. 732738.
Аксенова Л.А. Новые полиномиальные подклассы труднорешаемой задачи
«Минимизация суммарного взвешенного момента» для множества одного
приоритета // Управляющие системы и машины, – 2002.– №6.– С.21-28
Андерсон Т. Введение в многомерный статистический анализ / Пер. с
англ. Ю.Ф. Кичатова; Под ред. Б.В. Гнеденко. – М.: Физматтиз, 1963. –
500 с.
Андрейчиков А.В., Андрейчикова О.Н. Анализ, синтез, планирование решений в экономике. – Москва: Финансы и статистика. – 2001.
Веселов С.И., Шевченко В.Н. Об экспоненциальном росте коэффициентов
агрегирующего уравнения: Тез. докл. 4 Феодосийской конф. по пробл.
теорет. кибернетики. – Новосибирск: Ин-т математики СО АН СССР,
1977. – 53 с.
Галочкин И., Нестеренко Ю.В., Шидковский А.Б. Введение в теорию чисел. – М.: Изд-во Моск. ун-та, 1984. – 280 с.
Гери М.Р., Джонсон Д.С. Вычислительные машины и труднорешаемые
задачи. – М.: Мир, 1982. – 416 с.
Д. Худсон. Статистика для физиков. Москва, Мир, 1970.
Емельянов С.В. Управление гибкими производственными системами. Модели и алгоритмы.– Л.: Машиностроение; Берлин: Техник,– 1987.– 364 с.
Ершов А. А. Стабильные методы оценки параметров: (Обзор) // Автоматика и телемеханика. – 1978. – № 8. – С. 66-100.
Зайченко Ю.П. Дослідження операцій, – Київ: Слово – 2006 р. – 814с.
Згуровский М.З., Павлов А.А. Иерархическое планирование в системах,
имеющих сетевое представление технологических процессов и ограниченные ресурсы, как задача принятия решений // Системні дослідження
та інформаційні технології.– 2009.– №.__ С.____ .
Згуровский М.З., Павлов А.А., Штанькевич А.С. Модифицированный метод анализа иерархий // Системні дослідження та інформаційні технології.– 2010.– №.1. – С.____ .
Згуровский М.З., Павлов А.А., Мисюра Е.Б. ПДС-алгоритмы и труднорешаемые задачи комбинаторной оптимизации. Анализ эффективности, методология построения // Системні дослідження та інформаційні технології.– 2009.– №.__ С.____ .
681
Глава 9
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
682
Згуровский М.З., Павлов А.А., Мисюра Е.Б., Мельников О.В. Методология построения эффективного решения многоэтапных задач календарного
планирования на основе принципа иерархии и комплекса взаимосвязанных моделей и методов // Вісник НТУУ “КПІ”. Інформатика, управління
та обчислювальна техніка. К.: “ВЕК+”, 2010.– №50
Згуровский М.З., Павлов А.А., Мисюра Е.Б., Мельников О.В. Методы
оперативного планирования и принятия решений в сложных организационно-технологических системах // Вісник НТУУ “КПІ”. Інформатика,
управління та обчислювальна техніка. К.: “ВЕК+”, 2010.– №50
Згуровський М.З., Панкратова Н.Д. Основи системного аналізу // К.: Видавнича група BHV, 2007. – 544c.
И. Экланд. Элементы математической экономики. – М.: Мир, 1983. –
245ст.
Ивахненко А.Г. Моделирование сложных систем. – Киев: Высшая школа,
1997.
Ивахненко А.Г., Мюллер И.А.Самоорганизация прогнозирующих моделей. – Киев: Техника, 1985. – 221с.
Ивахненко А.Г., Юрачковский Ю.В. Моделирование сложных систем по
экспериментальным данным. – М: Радио и связь, 1986. – 118с.
Интернет-страница: http://www.bilkent.edu.tr/~bkara/start.html
Информатика в Украине: становление, развитие, проблемы. / Сергієнко И.В., Капітонова Ю.В., Лебедєва Т.Т. – НАН Украины. Ін-т кибернетики им. В.М. Глушкова.– К.: Наук. думка.– 1999 – 354 с.
Катренко А.В., Пасічник В.В., Пасько В.П. Теорія прийняття рішень. –
Київ: Видавнича группа BHV, – 2009, – 438 с.
Кини Р.Л., Райфа X. Принятие решений при многих критериях: предпочтения и замещения.—М.: Радио и связь, 1981. – 560 с.
Колмогоров А.Н. К обоснованию метода наименьших квадратов // Успехи
математических наук. – 1946. – Т. 1, Вып. 1. – С.57-70.
Конвей Р.В., Максвелл У.Л. Теория расписаний.– М.: Наука, 1975.– 359 с.
Конструктивные полиномиальные алгоритмы решения индивидуальных
задач из класса NP / Павлов А.А. и др., – Киев: Техника, – 1993. – 128 с.
Котлер Ф. Основы маркетинга: Пер. с англ.. / Под общ. ред.
Е.М.Пеньковой.– М.: Прогресс,– 1990.–736 с.
Ларичев О.И. Теория и методы принятие решений. – М.:Логос, 2000.
Меншикова О.Г., Подиновский В.В. Построение отношения предпочтения
и ядра в многокритериальных задачах с упорядоченными по важности неоднородными критериями // ЖВМ и МФ. 1988. № 5. С. 647 – 659.
Миллер Г. Магическое число семь плюс или минус два // Инж. психология. – М: Прогресс, – 1964.
Многоуровневая система оперативного управления ГПС в машиностроении / С.А.Соколицын, В.А.Дуболазов, Ю.Н.Демченко; под общ.ред.
С.А.Соколицына. – СПб: Политехника,– 1991. – 208 с.
Алгоритмическое обеспечение трехуровневой иерархической модели…
35
36
37
38
39
40
41
42
43
44
45
46
47
48
Ногин В.Д. Упрощенный вариант метода анализа иерархий на основе нелинейной свертки критериев // Журнал вычислительной математики и математической физики. – 2004. – т.44. – № 7. – С.1259-1268.
Норманн Р. Дрейпер, Гарри Смит. Прикладной регрессионный анализ, 3е изд.: Пер. с англ. – М.: Издательский дом «Вильямс», 2007. – 912 с
Общая модель и методы иерархического планирования функционирования
сложных организационно-производственных систем с ограниченными ресурсами / А.А. Павлов, Е.Б. Мисюра, О.В.Мельников, Сераржи Али Рухани
// Системні дослідження та інформаційні технології.– 2005.– №4.– С.7-24
Основы системного анализа и проектирования АСУ: Учебн. пособие. /
А.А. Павлов, С.Н. Гриша, В.Н.Томашевский и др. Под общ. ред.
А.А.Павлова, К.: Выща шк.,– 1991.– 367 с.
Павлов А.А. Линейные модели в нелинейных системах управления. – К.:
Техніка, 1982. – 166 с.
Павлов А.А. Алгоритмическое обеспечение сложных систем управления. /
К.: Выща школа, 1989. – 162 с.
Павлов А.А., Аксенова Л.А. Новые условия полиномиальной составляющей ПДС-алгоритма задачи «Минимизация суммарного взвешенного момента» // Проблемы программирования.– 2001.– №1.– C.69-75.
Павлов А.А., Анализ оценок сложности вычислений точных алгоритмов
решения задачи линейного целочисленного программирования общего
вида//Автоматика. – 1985. – № 5. – С. 42-48.
Павлов А.А., Гершгорин А. Е. Об одном методе сведения задачи линейного целочисленного программирования общего вида к задаче «о ранце»
//Автоматика. – 1985. – № 1. – С. 52-56.
Павлов А.А., Гриша С.Н., Томашевский В.Н. и др. Основы системного
анализа и проектирования АСУ: учеб. пособие./ под общ. ред. Павлова
А.А. – К.: Выща шк., 1991. – 367 с.
Павлов А.А., Иванова А.А. Алгоритм идентификации функции цели в методе анализа иерархий. / Вісник НТУУ “КПІ”. Інформатика, управління та
обчислювальна техніка. К.: “ВЕК+”, 2008.– №48.– С.46-48
Павлов А.А., Иванова А.А., Зигура Р.А. Метод группового учета аргументов и анализа иерархий (МГУАиАИ) в задачах принятия решений. //
Віснік НТУУ «КПІ» Інформатика, управління та обчислювальна техніка,
Київ – 2007р. №47. – 350с. – С. 205-214.
Павлов А.А., Иванова А.А., Чеховский А.В. Восстановление функции
принятия решения с использованием модифицированного метода анализа
иерархий // Вестник НТУ “ХПИ”: Сборник научных трудов. Тематический выпуск «Системный анализ, управление и информационные технологии».– Харьков: НТУ «ХПИ».– 2009.– №4.– С.17-23
Павлов А.А., Кут В.И. Математические модели оптимизации для обоснования и нахождения весов объектов по неоднородным матрицам парных
сравнений // Системні дослідження та інформаційні технології. 2007.–
№3.– С. 28–37
683
Глава 9
49
50
51
52
53
54
55
56
57
58
59
60
684
Павлов А.А., Кут В.И., Штанкевич А.С. Нахождение весов по матрице
парных сравнений с односторонними ограничениями. / Вісник НТУУ
“КПІ”. Інформатика, управління та обчислювальна техніка. К.: “ВЕК+”,
2008.– №48.– С.29-32
Павлов А.А., Лищук Е.И. Оперативное корректирование в задаче многокритериального выбора. / Автоматизированные системы управления и
приборы автоматики. – 2007. – В печати.
Павлов А.А., Лищук Е.И. Принятие решений на основе метода анализа
иерархий. // Вестник НТУ «ХПИ». Системный анализ, управление и информационные технологии. – 2007. – №41. – С. 69-76.
Павлов А.А., Лищук Е.И., Кут В.И. Математические модели оптимизации
для обоснования и нахождения весов в методе парных сравнений // Системні дослідження та інформаційні технології.– 2007.– №2.– С.13–21
Павлов А.А., Лищук Е.И., Кут В.И. Многокритериальный выбор в задаче
обработки данных матрицы парных сравнений // Вісник НТУУ “КПІ”. Інформатика, управління та обчислювальна техніка. К.: “ВЕК+”, 2007.–
№46.– С.84-88
Павлов А.А., Мисюра Е.Б. Новый подход к решению задачи «Минимизация суммарного взвешенного опоздания при выполнении независимых
заданий с директивными сроками одним прибором» // Системні дослідження та інформаційні технології, – 2002, №2, С.7-32.
Павлов А.А., Павлова Л.А. Основы методологии проектирования ПДСалгоритмов для труднорешаемых комбинаторных задач/ Киев.– Проблемы
информатики и управления.– 1995.–№ 4.– ст. 135-141.
Павлов А.А., Теленик С.Ф. Информационные технологии и алгоритмизация в управлении.– К.: Техника.– 2002.– 344 с.
Павлов А.А., Чеховский А.В. Построение многомерной полиномиальной
регрессии (активный эксперимент) // Системні дослідження та інформаційні технології, – 2009, №1. – С.87-99
Павлов А.А., Чеховский А.В. Построение многомерной полиномиальной
регрессии. Активный эксперимент с ограничениями // Вестник НТУ
“ХПИ”: Сборник научных трудов. Тематический выпуск «Системный
анализ, управление и информационные технологии».– Харьков: НТУ
«ХПИ».– 2009.– №4.– С.174-186
Павлов А.А., Чеховский А.В. Сведение задачи построения многомерной
регрессии к последовательности одномерных задач // Вісник НТУУ
“КПІ”. Інформатика, управління та обчислювальна техніка. К.: “ВЕК+”,
2008.– №48.– С.111-112
Павлов А.А., Штанькевич А.С. Восстановление закономерности по результатам пассивного эксперимента с ограниченным набором данных. /
Вестник НТУ «ХПИ». Системный анализ, управление и информационные
технологии. – Харьков: НТУ «ХПИ».– 2009.– №4.– С.160-169
Алгоритмическое обеспечение трехуровневой иерархической модели…
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
Павлов А.А., Штанькевич А.С. Восстановление неизвестной закономерности по ограниченному набору экспериментальных данных с ошибкой./
Вестник НТУУ «ХПИ». Системный анализ, управление и информационные технологии. Харьков: НТУ «ХПИ». – 2009. – №5. – 10с.
Пападимитриу X. Стайглиц К. Комбинаторная оптимизация. Алгоритмы и
сложность. – М.: Мир, 1985. – 510 с.
Первин Ю. А., Португал В. М., Семенов А. И. Планирование мелкосерийного производства в АСУП. – М.: Наука, – 1973. – 459 с.
Петров В.А., Масленников А.Н., Осипов Л.А. Планирование гибких производственных систем.– Л.: Машиностроение, ЛО,– 1985.– 182 с.
Планирование и управление в автоматизированном производстве / В.В.
Шкурба, С.А. Белецкий, К.Ф. Ефетова и др.– К.: Наукова думка, 1985.–
224 с.
Планирование производства в условиях АСУ: Справочник / Ефетова К.Ф.,
Подчасова Т.П., Португал В.М., Тринчук Б.Е.– К.: Техніка,– 1984.– 135 с.
Подиновский В.В. Многокритериальные задачи с однородными равноценными критериями // ЖВМ и МФ. 1975. № 2. С. 330 – 344.
Радченко С.Г. Устойчивые методы оценивания статистических моделей:
Монография – К.: ПП «Санспарель», 2005. – 504 с.
Саати Т. Принятие решений. Метод анализа иерархий: Tomas Saaty. The
Analytic Hierarchy Process. –Пер. с англ. Р.Г. Вачнадзе. – М.: Радио и
связь, 1993. – 315 с.
Саати Т. Целочисленные методы оптимизации и связанные с ними экстремальные проблемы. – М.: Мир, 1973. – 302 с.
Саати Т., Кернс К. Аналитическое планирование. Организация систем:
Пер. с англ. Р.Г. Вачнадзе: Под ред. И.А. Ушакова. – М.: Радио и связь,
1991. – 223 с.
Сергиенко И.В. Математические модели и методы решения задач дискретной оптимизации. / К.: Наукова думка, 1985. – 382 с.; 2-е изд., доп. и
перераб., 1988. – 472 с.
Сергиенко І.В. Інформатика в Україні: становлення, розвиток, проблеми /
К.: Наукова думка, 1999. – 354 с.
Системы автоматизированного планирования и диспетчирования групповых производственных процессов / А.А.Павлов, З.Банашак, С.Н.Гриша,
Е.Б.Мисюра; под ред. А.А.Павлова.– К.: Тэхника, 1990.– 260 с.
Скурихин В.И., Павлов А.А., Путилов Э.П., Гриша С.Н. Автоматизированные системы управления гибкими технологиями. – К.: Техніка, 1987. –
184 с.
Танаев В.С., Шкурба В.В. Введение в теорию расписаний. – М.: Наука,
1975.– 256 с.
Таха Хемди. Введение в исследование операций, 6-е издание: Пер. с англ.
– М.: Издательский дом «Вильямс», 2001. – 912с.: ил. – Парал. тит. англ.
Тоценко В.Г. Методы и системы поддержки принятия решений. Алгоритмический аспект. – Киев: Наукова думка. – 2002. – 381с.
685
Глава 9
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
686
Универсальный алгоритм решения задачи «Минимизация взвешенного
момента окончания работ при отношении порядка, заданном ориентированным ациклическим графом» / А.А.Павлов, Л.А.Павлова, А.Б.Литвин,
Е.Б.Мисюра.– К., 1992.– 58с.– Деп. в УкрНИИНТИ 05.05.90, №569 – Ук
92
Форсайт Дж., Малькольм М., Моулер К. Машинные методы математических вычислений / Пер. с англ. Х.Д. Икрамова. – М.: Мир, 1980. – 280 с.
Ху Т. Целочисленное программирование и потоки в сетях. – М.: Мир,
1974.-519 с.
Шило В.П. Метод глобального равновесного поиска / Кибернетика и систем. анализ, 1999. -№1. – С. 74-80.
A.H.G. Rinnooy Kan, B.J. Lageweg and J.K.Lenstra, Minimizing total costs in
one-machine scheduling / Oper. Res. 23, 908–927 (1975).
Aarts, E.H.L., Van Laarhooven, P.J.M., Ulder, N.L.J. Local search based algorithms for job-shop scheduling. Working Paper.– Eindhoven: University of
Technology, Department of Mathematics and Computer Science,– 1991.– 20 p.
Adams, J., Balas, E., Zawack, D. The shifting bottleneck procedure for jobshop scheduling // Management Science,– 1988.– №34 (3).– pp. 391–401.
Akers, S.B., Jr. A graphical approach to production scheduling problems // Operations Research.– 1956.– №4.– pp. 244–245.
Baker K.R., Scudder G.D. Sequencing with earliness and tardiness penalties: a
review // Operations Research.– 1990.– Vol.1.– №38.– Р.22-36
Baker K.R., Shrage L.E. Finding an optimal sequence by dynamic programming: an extension to precedence-related tasks / Oper. Res. 26, 111–120 (1978).
Balas, E., Lancia, G., Serafini, P., Vazacopoulos, A. Job-shop scheduling with
deadlines // Journal of Combinatorial Optimization.– 1998.– №1 (4).– pp. 324–
353.
Balas, E., Vazacopoulos, A. Guided local search with shifting bottleneck for
job-shop scheduling // Management Science.– 1998.– №44 (2).– pp. 262–275.
Bitran G.R., Haas E.A., Hax A.C. Hierarchical Production Planning: A Single
Stage System. Operations Research 29,– 1981.– pp.717-743.
Bitran G.R., Hax A.C. Disaggregation and Resource Allocation Using Convex
Knapsack Problems. Management Science 27,– 1981.– pp.431-441.
Bitran G.R., Hax A.C. One the Design of Hierarchical Production Planning
Systems. Decision Science 8,– 1977.– pp.28-55.
Bitran G.R., Tirupati D., Hierarchical Production Planning, in: Handbooks in
Operations Research and Management Science, Volume 4, Logistics of Production and Inventory, edited by S. C. Graves, A. H. G. Rinnooy Kan and P. H. Zipkin, Amsterdam, Elsevier Science Publishers B. V.,– 1993, pp. 523-568.
Bradley G.Н. Transformation of Integer Programs to Knapsack Problems
//Discrate Mathematics. – 1971. – 1. – P. 29-45.
Bräsel, H. Lateinische Rechtecke und Maschinenbelegung.– Magdeburg: Habilitationschrift, TU Magdeburg, 1990.– 272 p.
Алгоритмическое обеспечение трехуровневой иерархической модели…
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
Brucker P., Hurink J., Werner F. Improving local search heuristics for some
scheduling problems part I // Discrete Applied Mathematics.– 1996.– №65 (1–
3).– pp. 97–122.
Brucker P., Hurink J., Werner F. Improving local search heuristics for some
scheduling problems part II // Discrete Applied Mathematics.– 1997.– №72
(1/2).– pp. 47–69.
C.N.Potts and L.N.Van Wassenhove, A decomposition algorithm for the single
machine total tardiness problem / Oper. Res. Lett. 1, 177–181 (1982).
C.N.Potts and L.N.Van Wassenhove, Dynamic programming and decomposition approaches for single machine total tardiness problem / European J. Oper.
Res. 32, 405–414 (1987).
Caseau Y., Laburthe F. Disjunctive scheduling with task intervals. LIENS
Technical Report No 95-25.– Paris: Laboratoire d’Informatique de l’ Ecole
Normale Superieure Departement de Mathematiques et d’Informatique, 1995.–
35 p.
Chen B., Potts C.N., Woeginger G.J. A Review of Machine Scheduling: Complexity, Algorithms and Approximability // In: D.-Z. Du and P. Pardalos, eds.,
Handbook of Combinatorial Optimization, Vol. 3 (Kluwer Academic Publishers),– 1998.– pp.21-169.
Chris N. Potts, Mikhail Y. Kovalyov. Scheduling with batching: A review //
European Journal of Operational Research.– 2000, Vol.120.– P.228-249.
Cook, S.A.: The complexity of theorem-proving procedures // Proc. 3rd.
Annual ACM Symp. Theory of Computing.– New York, 1971.– pp. 151–158.
Davis J.S., Kanet J.J. Single-machine scheduling with early and tardy completion costs // Naval Research Logistics.– 1996.– №40.– Р.85-101
Delia Croce F., Grosso A., Paschos V.Т. Lower bounds on the approximation
ratios of leading heuristics for the single-machine total tardiness problem /
Journal of Scheduling 7: 85-91, 2004.
Demirkol, E., Mehta, S., Uzsoy, R. A computational study of shifting bottleneck procedures for shop scheduling problems // Journal of Heuristics.– 1997.–
№3 (2).– pp. 111–137.
Dorndorf U., Pesch E. Evolution based learning in a job-shop scheduling environment // Computers and Operations Research.– 1995.– №22 (1).– pp. 25–40.
Du J., Leung J.Y.-T. Minimizing total tardiness on one processor is NP-hard. /
Math. Oper. Res. 15, 483–495 (1990).
Emmons H. One machine sequencing to minimize certain functions of job tardiness / Oper. Res. 17, 701–715 (1969).
Falkenauer, E., Bouffouix, S. A genetic algorithm for the job-shop. // The Proceedings of the IEEE International Conference on Robotics and Automation.–
Sacremento, California, USA, 1991.– pp. 41-48.
Feldmann M., Biskup D. Single-machine scheduling for minimizing earliness
and tardiness penalties by meta-heuristic approaches // Computers & Industrial
Engineering.– 2003.– №44.– P.307-323
687
Глава 9
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
688
Fisher H., Thompson G.L. Probabilistic learning combinations of local jobshop scheduling rules. / In: Muth, J.F., Thompson, G.L. Industrial Scheduling.–
Englewood Cliffs: Prentice-Hall, 1963.– pp. 225–251.
Fisher M.L. A dual algorithm for the one-machine scheduling problem / Math.
Programming 11, 229–251 (1976).
Fisher, M.L., Rinnooy Kan, A.H.G. The design, analysis and implementation of
heuristics (special issue) // Management Science.– 1988.– №34 (3).– pp. 263–
401.
Foo, S.Y., Takefuji, Y. Integer linear programming neural networks for jobshop scheduling // IEEE International Conference on Neural Networks.– San
Diego, 1988.– pp. 341–348.
Foo, S.Y., Takefuji, Y. Stochastic neural networks for solving job-shop scheduling: Part 1. Problem representation // IEEE International Conference on Neural Networks.– San Diego, 1988.– pp. 275–282.
Foo, S.Y., Takefuji, Y. Stochastic neural networks for solving job-shop scheduling: Part 2. Architecture and simulations // IEEE International Conference on
Neural Networks.– San Diego, 1988.– pp. 283–290.
Forsythe G, journ. Sos.Ind. Appl. Math 5,74 (1957)
Fox, M.S. Constraint-Directed Search: A Case Study of Job-Shop Scheduling //
Research Notes in Artificial Intelligence.– London:Pitman, 1987.– pp. 12-23.
Garey, M.R., Tarjan, R.E., Wilfong, G.T. One-processor scheduling with symmetric earliness and tardiness penalties // Mathematics of Operations Research.– 1988.– №13.– Р.330-348
Glover F. Future paths for integer programming and links to artificial intelligence // Computers and Operations Research.– 1986.– №13 (5).– pp. 533–549.
Glover F. Heuristics for integer programming using surrogate constraints // Decision Sciences.–1977.– №8 (1).– pp. 156–166.
Glover F. Tabu search – Part I // ORSA Journal on Computing.– 1989.–
№1(3).– pp. 190–206.
Glover F. Tabu search – Part II // ORSA Journal on Computing.– 1990.– №2
(1).– pp. 4–32.
Glover, F., Greenberg, H.J. New approaches for heuristic search: A bilateral
linkage with artificial intelligence // European Journal of Operations Research.–
1989.– №39 (2).– pp. 119–130.
Glover, F., Laguna, M. Tabu Search. Kluwer, Norwell: Kluwer.– 1989.– 85 p.
Goldman R.P., Boddy M.S. A constraint-based scheduler for batch manufacturing. // IEEE Expert 12 (1),– 1997.– pp.49-56.
Grabot B., Geneste L. Dispatching rules in scheduling: A fuzzy approach // International Journal of Production Research.– 1994.– №32 (4).– pp. 903–915.
Graham, R.L., Lawler, E.L., Lenstra, J.K., Rinnooy Kan, A.E.G.: Optimization
and approximation in deterministic sequencing and scheduling: a survey // Ann.
Discrete Math.– 1979.– №5.– pp. 287–326.
Graves S.C. Manufacturing Planning and Control. Massachusetts Institute of
Technology. / Working paper // In: Handbook of Applied Optimization, edited
by P. Pardalos and M. Resende,– 1999.– 26 p.
Алгоритмическое обеспечение трехуровневой иерархической модели…
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
Grefenstette J.J. Incorporating problem specific knowledge into genetic algorithms. / In: Davis L. Genetic Algorithms and Simulated Annealing.– London:
Pitman, 1987.– pp. 42–60.
Grossmann I.E., Quesada I., Raman R. et. al. Mixed integer optimization techniques for the design and scheduling of batch processes. Presented at NATO
Advanced Study Institute – Batch process system engineering. Antalya,
Turkey, – 1992.
Grosso A., Della Croce F., Tadei R. An enhanced dynasearch neighborhood for
the single-machine total weighted tardiness scheduling problem // Operations
Research Letters. – 2004.– №32.– pp.68–72
Hax A. C., Meal H. C. Hierarchical Integration of Production Planning and
Scheduling. // Studies in Management Sciences, Vol. 1. Logistics, M. A. Geisler (ed.), North Holland-American Elsevier, New York, – 1975.
Hefetz, N., Adiri, I. An efficient optimal algorithm for the two-machines unittime job-shop schedule-length problem // Mathematics of Operations Research.– 1982.– №7.– pp. 354–360.
Jackson, J.R. An extension of Johnson's result on job lot scheduling. // Naval
Research Logistics Quarterly.– 1956.– №3 (3).– pp. 201–203.
Jain, A.S., Meeran, S. Deterministic job-shop scheduling: Past, present and future. European Journal of Operational Research.– 1999.– №113.– pp. 390–434.
Jin S., Mason S.J. Minimizing earliness and tardiness costs on a single machine
with uncommon job due dates // Department of Industrial Engineering, Bell
Engineering Center, University of Arkansas Fayetteville, 2004.– 23 p.
Johnson, D.S., Papadimitriou, C.H., Yannakakis, M. How easy is local search?
// Journal of Computer and System Sciences.– 1988.– №37 (1).– pp. 79–100.
Johnson, S.M. Optimal two– and three-stage production schedules with set-up
times included // Naval Research Logistics Quarterly.– 1954.– №1.– pp. 61–68.
Karp, R.M.: Reducibility among combinatorial problems / In: Miller, R.E.,
Thather, J.W. (eds.): Complexity of Computer Computations, Plenum press,
New York, 1972.– pp. 85–103.
Kempf K.G., Le Pape C, Smith S. F., Fox B. R. Issues in the Design of AIBased Schedulers: A Workshop Report. AI Magazine, Special Issue.– 1991
Kirkpatrick S., Gelatt C.D., Vecchi M.P. Optimization by simulated annealing /
Science. – 1983. -220. –P. 671-680.
Kolonko, M. Some new results on simulated annealing applied to the job shop
scheduling problem // The European Journal of Operational Research.– 1999.–
№113.– pp. 435–467.
Kovacs A. Novel Models and Algorithms for Integrated Production Planning
and Scheduling: Ph.D. Thesis. Computer and Automation Research Institute:
Budapest,– 2005.
Lageweg, B.J., Lawler, E.L., Lenstra, J.K., Rinnooy Kan, A.H.G. Computer-aided
complexity classification of deterministic scheduling problems, Report BM
№138.– New York: Centre for Mathematics and Computer Science, 1981.– 41 p.
689
Глава 9
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
690
Lageweg, B.J., Lawler, E.L., Lenstra, J.K., Rinnooy Kan, A.H.G. Computeraided complexity classification of combinatorial problems // Comm. ACM.–
1982.– №25.– pp.817-822.
Lawler E.L. A pseudopolynomial algorithm for sequencing jobs to minimize
total tardiness / Ann. Discrete Math. 1, 331–342 (1977).
Lawler E.L. Sequencing jobs to minimize total weighted completion time subject to precedence constraints // Ann. Discrete Math.– 1978.– №2.– P.75–90.
Lawler E.L., Lenstra J.K., Rinnooy Kan A.H.G., Shmoys D.B. Sequencing and
scheduling: Algorithms and complexity / In: Lawler, E.L., Lenstra, J.K. Handbook in Operations Research and Management Science 4: Logistics of Production and Inventory.– New York: Academic Press, 1993.– pp 120-182.
Lawler, E.L. A fully polynomial approximation scheme for the total tardiness
problem // Operations Research Letters.– 1982.– №1.– Р.207-208
Lawrence S. Supplement to resource constrained project scheduling: An experimental investigation of heuristic scheduling techniques.– Pittsburgh: Graduate
School of Industrial Administration, Carnegie-Mellon University, 1984.– 120 p.
Liu R. A Framework for Operational Strategies for Pipeless Plants. (Ph.D. thesis, Department of Chemical Engineering, The University of Leeds).– 1996.–
pp. 26-28.
Lourenco H.R.D. A computational study of the job-shop and the flow-shop
scheduling problems. Ph.D. Thesis TR – New York: School of Operations Research and Industrial Engineering, Cornell University, 1993.– 185 p.
Lourenco H.R.D. Job-shop scheduling: Computational study of local search
and large-step optimization methods // European Journal of Operational Research.– 1995.– №83.– pp. 347–364.
Lourenco H.R.D., Zwijnenburg M. Combining the large-step optimization with
tabu-search: Application to the job-shop scheduling problem / In: Osman, I.H.,
Kelly, J.P. Meta-heuristics: Theory and Applications.– Boston, MA: Kluwer
Academic Publishers, 1996.– pp. 219–236.
Martin O., Otto S.W., Felten E.W. Large-step Markov chains for traveling
salesman problem // Complex Systems.– 1989.– №5.– pp. 299–326.
Martin O., Otto S.W., Felten E.W. Large-step Markov chains for TSP incorporating local search heuristics // Operations Research Letters.– 1992.– №11.– pp.
219–224.
Matsuo, H., Suh, C.J., Sullivan, R.S. A controlled search simulated annealing
method for the general job-shop scheduling problem. Working Paper, 03-04-88.–
Austin: Graduate School of Business, University of Texas at Austin, 1988.– 42 p.
Morton, T.E., Pentico, D.W. Heuristic Scheduling Systems // Wiley Series in
Engineering and Technology Management.– New York, 1993.– pp.35-47.
Moscato P. On evolution, search, optimization, genetic algorithms and martial
arts: Towards memetic algorithms. // C3P Report 826: Caltech Concurrent
Computation Program.– Caltech, CA, 1989.– pp. 33-48.
Musier R.F.H., Evans L.B. An approximate method for the production scheduling of industrial batch processes with parallel units. / Computers & Chemical
Engineering, 13 (1-2),– 1989.– pp. 229-238.
Алгоритмическое обеспечение трехуровневой иерархической модели…
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
Nakano, R., Yamada, T. Conventional genetic algorithm for job-shop problems. / In: Kenneth, M.K., Booker, L.B. (Eds.), Proceedings of the Fourth International Conference on Genetic Algorithms and their Applications.– San
Diego, CA, USA, 1991.– pp. 474–479.
Nowicki E., Smutnicki C. A fast taboo search algorithm for the job-shop problem // Management Science.– 1996.– №42 (6).– pp.797– 813.
Nuijten W.P.M., Le Pape C. Constraint-based job-shop scheduling with ILOG
SCHEDULER // Journal of Heuristics.– 1998.– №3 (4).– pp. 271–286.
Nussbaum M., Parra E.A. A Production Scheduling System. ORSA Journal on
Computing. Vol. 5, No. 2, Spring 1993, pp.168-181
Overturf B.W., Reklaitis G.V., Woods J.W. GASP IV and the simulation of
batch/semi-continuous operations: single train process. // Industrial and Engineering Chemistry, Process Design and Development, 17 (2),– 1978.– pp. 161165.
Ow P.S.; Morton T.E.The Single Machine Early/Tardy Problem / Management
Science, Vol. 35, №2, 1989,– p.177-191
Panwalkar S.S., Iskander W. A survey of scheduling rules // Operations Research.– 1977.– №25 (1).– pp.45–61.
Pavlov A., Pavlova L. PDC-algorithms for intractable combinatorial problems.
Theory and methodology of design. – Uzhhorod, «Karpatskij region» shelf
№15, 1998,– 320 pp.
Pavlov A.A., Pavlova L.A. About one subclass of polynomially solvable problems from class «Sequencing jobs to minimize total weighted completion time
subject to precedence constraints»// Вестник международного Соломоновского университета (Киев).– 1999.– №1.– C. 109-116.
Pesch E., Tetzlaff U.A.W. Constraint propagation based scheduling of job
shops // INFORMS Journal on Computing.– 1996.– №8 (2).– pp. 144–157.
Plaggenborg, S. Ein Algorithmus zur komplexitaetsmaessigen Klassifikation
von Schedulingproblemen. – Osnabrueck: Diplomarbeit Fachbereich Mathematik/Informatik, Universitaet Osnabrueck, 1994.– 112 S.
Resende, M.G.C. A GRASP for job shop scheduling // INFORMS Spring
Meeting.– San Diego, CA, 1997.– pp. 23-31.
Rich S.H., Prokopakis G.J. Scheduling and sequencing of batch operations in a
multipurpose plant. / Industrial and Engineering Chemistry, Process Design and
Development, 25,– 1986.– pp. 979-988.
Rippin D.W.T. Design and operations of multiproduct and multipurpose batch
chemical plants – an analysis of problem structure. / Computers & Chemical
Engineering, 7 (4),– 1983.– pp.463-481.
Rippin D.W.T. Simulation of single- and multiproduct batch chemical plants
for optimal design and operation. / Computers & Chemical Engineering, 7 (3),–
1983.– pp.137-156.
Rodammer, F.A., White, K.P., Jr. A recent survey of production scheduling //
IEEE Transactions of Systems, Man and Cybernetics.– 1988.– №18 (6).– pp.
841–851.
691
Глава 9
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
692
Saaty T.L. Multycriteric Decision Making. The Analytic Hierarchy Process,
McGraw Hill International. – New York, 1980. Translated to Russian, Portuguese, and Chinese. Revised edition, Paperback. – Pittsburgh, PA: RWS Publications, 1990, 1996.
Saaty T.L. The Analytic Network Process. – Pittsburgh: RWS Publications,
2001.– p.386.
Sabuncuoglu, I., Bayiz, M. A beam search based algorithm for the job shop
scheduling problem. Research Report IEOR-9705.– Bilkent: Department of
Industrial Engineering, Bilkent University, Turkey, 1997.– 24 p.
Sabuncuoglu, I., Gurgun, B. A neural network model for scheduling problems
// European Journal of Operations Research.– 1996.– №93 (2).– pp. 288–299.
Sadeh, N. Look-ahead techniques for micro-opportunistic job shop scheduling.
Ph.D. Thesis.– Pittsburgh, PA: School of Computer Science, Carnegie Mellon
University, 1991.– 168 p.
Shrage L., Baker K.R. Dynamic programming solution of sequencing problems
with precedence constraints / Oper. Res. 26, 444–449 (1978).
Sidney J.B. Decomposition algorithm for Single-Machine Sequencing with
Precedence Relation and Deferral Costs // Operation Res.– 1975.– N23.–
P.283-298
Sridharan V., Zhou, Z. A decision theory based scheduling procedure for single-machine weighted earliness and tardiness problem // European Journal of
Operations Research.– 1996.– №94.– Р.292-301
Srinivasan V. A hybrid algorithm for the one-machine sequencing problem to
minimize total tardiness / Naval Res. Logist. Quart. 18, 317–327 (1971).
Szwarc W. Single machine total tardiness problem revisited, in: Y.Ijiri (ed.),
Creative and Innovative Approaches to the Science of Management, Quorum
Books, 1993, pp.407–419.
Szwarz W., Mukhopadhyay S.K. Decomposition of the single machine total
tardiness problem // Operations Research Letters 19 (1996) pp.243-250.
Szwarc W., Mukhopadhyay S.K. Optimal timing scheduling in earlinesstardiness single machine sequencing // Naval Research Logistics.– 1995.–
№42.– Р.1109-1114
Szwarc W., Grosso A., Delia Croce F. Algorithmic paradoxes of the single machine total tardiness problem / Journal of Scheduling 4, 93-104 (2001).
Taillard, E. Parallel taboo search technique for the job-shop scheduling problem.
Internal Research Report ORWP89/11.– Lausanne, Switzerland: Department de
Mathematiques (DMA), Ecole Polytechnique Federale de Lausanne, 1989.– 38 p.
Tϋtϋncϋoglu R.A. Sequencing with earliness and tardiness penalties.–
Department of Industrial Engineering, Bilkent University, 1999.– 14 p.
Ulder N.L.J., Aarts E.H.L., Bandelt H.-J. et al. Genetic local search algorithm
for the travelling salesman problem // Lecture Notes in Computer Science.–
1991.– №496.– pp. 109–116.
Ulder N.L.J., Aarts E.H.L., Bandelt H.-J. et al. Improving TSP exchange heuristics by population genetics // First International Workshop on Parallel Problem solving from Nature (PPSN’1).– Dortmund, Germany, 1990.– pp. 45-51.
Алгоритмическое обеспечение трехуровневой иерархической модели…
197
198
199
200
201
202
203
204
205
206
207
Vaessens, R.J.M. Operations research library of problems. London: Management School, Imperial College, 1996.– 150 p.
Valente J. M. S., Alves R. A. F. S. Improved heuristics for the early/tardy
scheduling problem with no idle time // Computers & Operations Research.–
2005.– №32.– P.557-569
Van Laarhoven, P.J.M., Aarts, E.H.L., Lenstra, J.K. Job-shop scheduling by
simulated annealing. Report OS-R8809.– Amsterdam: Centrum voor Wiskunde
en Informatica, 1988.– 58 p.
Wallace M.G. Practical applications of constraint programming. Constraints,
1(1):139-168, 1996.
Werner, F., Winkler, A. Insertion techniques for the heuristic solution of the
job-shop problem // Discrete Appl. Math.– 1995.– №58 (2).– pp. 191–211.
Yamada T., Nakano R. Job-shop scheduling by simulated annealing combined
with deterministic local search. Meta-heuristics: Theory and Applications.–
Hingham, MA: Kluwer Academic Publishers, 1996.– pp. 237–248.
Yamada, T., Nakano, R. Job-shop scheduling by simulated annealing combined
with deterministic local search. // Metaheuristics International Conference
(MIC’95).– Hilton, Breckenridge, Colorado, USA, 1995.– pp. 344–349.
Yannakakis, M. The analysis of local search problems and their heuristics //
Lecture Notes in Computer Science.– 1990.– №415.– Berlin: Springer-Verlag.–
pp. 298–311.
Yano C.A., Kim Y.D. Algorithms for a class of single-machine weighted tardiness and earliness problems // European Journal of Operations Research.–
1991.– №52.– pp.167–178
Zhou, D.N., Cherkassky, V., Baldwin, T.R., Hong, D.W. Scaling neural networks for job-shop scheduling. // International Joint Conference on Neural
Networks (IJCNN'90).– San Diego, CA, 1990.– pp. 889–894.
Zhou, D.N., Cherkassky, V., Baldwin, T.R., Olson, D.E. A neural network approach to job-shop scheduling // IEEE Transactions on Neural Network.–
1991.– №2 (1).– pp.175–179.
693
Download