
- •Группа пмф-091 выпускная квалификационная работа
- •Оглавление
- •Введение
- •Постановка задачи
- •Математическая модель
- •Условия доминирования
- •Доминирование упорядочений вида (..., , , ...) над упорядочениями вида (..., ,...).
- •Общий случай условий доминирования
- •Последовательное улучшение
- •Классификация методов решения
- •Эффективные преобразования
- •Синтез оптимального плана работы системы
- •Подход к решению задачи
- •Получение 1-оптимальных решений
- •Признак 1-оптимальности
- •Список литературы и электронных материалов
Математическая модель
Для нахождения оптимального решения описанной задачи достаточно исследовать множество (класс) P квазикомпактных перестановочных расписаний без искусственных простоев. Перестановочные расписания полностью определяются порядком выполнения работ и в случае n работ задаются одной из n! возможных перестановок их номеров.
Введем следующие обозначения:
n - множество всех перестановок из n элементов 1, 2, ..., n;
p(r) - r-й элемент перестановки p ∈ n.
Перестановке
p
соответствует упорядочение работ
(расписание, перестановочное расписание)
(p)
= (tp(1)
, tp(2),
, … ,
tp(n))
∈
P.
Если p(r)
= k,
то работа tk
в расписании 𝜋(p)
занимает r-е
место. Если p(r)
= r
при всех r
= 1, 2, ..., n,
то расписание 𝜋
(p)
есть (t1,
t2,
..., tn).
Обозначим через
Cp(r)(𝜋,
i)
момент завершения выполнения
i-й
операции (на машине Мi)
работы, занимающей в расписании 𝜋
(p) r-е
место. Величина
определяет момент окончания обработки,
то есть длину расписания π.
, будем считать
заданными величины
(длительность обработки машиной
)
и
(директивный срок окончания ее выполнения).
Определение 2.1. Разность
называется
временным
смещением работы
.
Определение 2.2.Величина
называется
запаздыванием работы
в расписании
Критерий
оценки расписания
есть максимальное временное запаздывание
Задача состоит в
нахождении во множестве P
перестановочных
расписаний такого расписания
(оптимального)
что
Пусть p
– некоторая
перестановка элементов 1, 2, …, n.
Рассмотрим расписание
,
соответствующее перестановке p.
Директивный срок, запаздывание и
временное смещение работы
занимающей в расписании
-е
место, будем обозначать
и
соответственно.
Для представления расписания используем матричную модель:
Директивные
сроки работ
,
упорядоченных в соответствии с расписанием
,
будем описывать вектором
Условия доминирования
На примере задачи Fm | | Cmax было показано, что определение условий доминирования - один из подходов к построению приближенно оптимальных расписаний. Мы проведем аналогичное исследование для конвейерной задачи с директивными сроками Fm | | Tmax. При этом будем использовать понятия и определения, введенные в разделах 1 и 2. Говоря о предпочтительности (доминировании) одного множества расписаний перед другим, мы будем иметь в виду критерий Tmax - максимальное запаздывание.
Вначале рассмотрим условия, на основании которых можно сделать вывод о предпочтительности упорядочения работ вида (..., tk, tr, ...) перед упорядочением вида (..., tr, tk, ...). Результаты, полученные для упорядочений работ вида (., tk, tr, .), мы затем обобщим на случай упорядочений вида (., tr, ., tk, .).
Доминирование упорядочений вида (..., , , ...) над упорядочениями вида (..., ,...).
Рассмотрим 4-разбиение:
множества
индексов работ
= {1, 2, ..., n}.
Пусть p1
и p2
- произвольные перестановки элементов
множеств
соответственно. Из подпоследовательностей
и
и
работ
и
сформируем
два перестановочных расписания,
отличающихся транспозицией соседних
элементов
и
:
Расписание
предпочтительнее расписания
в смысле критерия Tmax,
если верно неравенство
Условия
доминирования упорядочения работ (...,
tk,
tr,
...) над упорядочением (…, tr,
tk,
...) будем искать, как решения неравенства
(3.2), верные при любых
и
(то есть при всех возможных разбиениях
вида (3.1) и перестановках
и
элементов множеств
соответственно).
Замечание 3.1. Говоря обо всех возможных 4-разбиениях вида (3.1), мы подразумеваем, что допустимыми, помимо всех прочих, являются специальные случаи:
= ∅,
≠ ∅, то есть E4( ) = {∅, , {k}, {r}} = { , {k}, {r}}
и
≠∅, = ∅, то есть E4
= { , ∅, {k}, {r}} = { , {k}, {r}}.
В
первом случае расписания
и
определяются как
и
,
во втором -
и
.
Для
частичных расписаний
и
в
соответствии с выражением (2.3) определим
величины максимального запаздывания
Так как
то (1.2) эквивалентно
(3.3)
Очевидно,
в оптимальном расписании
временные параметры (длительности
операций, директивные сроки) любой пары
соседних работ tk
и tr
удовлетворяют условию (3.3).
Так как в расписании работа tk предшествует работе tr, а в расписании работа tr предшествует работе tk, то
Отсюда при учете (2.1), (2.2) получаем:
Стало быть, неравенство (3.3) эквивалентно неравенству
(3.4)
Интерес
представляют решения последнего
неравенства, не зависящие от
подпоследовательностей
и
.
Так как
,
то для того чтобы решение неравенства
(3.4) было верно для
любой подпоследовательности
,
достаточно выполнения условия
∀
(3.5)
Для получения конструктивного признака оптимальности следует искать решения неравенства (3.5), которые зависят только от параметров работ tk и tr. Найти такие решения удается лишь в результате сопоставления
и
Для выполнения условия (3.5)необходимо потребовать, чтобы для любого было верным хотя бы одно из неравенств
(3.6)
или
(3.7)
Одновременного выполнения неравенств (3.6) и (3.7) достаточно для выполнения условия (3.5). Таким образом, достаточным условием доминирования упорядочения работ (..., tk, tr, ...) над упорядочением (., tr, tk, .) является
(3.8)
Найдем решения системы (3.8), верные для любых подпоследовательностей , и получим условия доминирования в явной форме через параметры работ tk и tr.
Из элементов с v-го по w-й векторов Ak и Ar образуем матрицы
Матрица
является подматрицей матрицы
(
),
=
,
а
- подматрицей
(
),
=
.
Пусть
подпоследовательность (частичное
расписание)
содержит
элементов (|
1|
=
).
Построим матрицы
(
),
и
времен
выполнения работ для частичных
расписаний
,
и
:
По
аналогии с
введем
определители
и
для матриц
,
,
соответственно.
Рассмотрим первое неравенство системы (3.8) и определим условия, при которых оно верно для всех .Так как
то при учете (2.2) условие
∀
может
быть записано в виде:
(3.9)
где
и
длины
частичных расписаний
и
соответственно. Принимая во внимание
соотношение
представим условие (3.9) в следующей
форме:
Зафиксируем
подпоследовательность
(то есть зафиксируем J1
и p1)
и рассмотрим критический путь
матрицы
.
Этот путь имеет непустое пересечение
с сегментом
,
которому соответствует вектор
–
-й
столбец матрицы
:
.
Выделим
в критическом пути
два сегмента
и
.
Сегменты имеют общий элемент
.
Соответствующий элемент матрицы
есть
avk.
Очевидно, сегмент
является
критическим путем матрицы
В
частичном расписании
работы
упорядочены в соответствии с
перестановкой индексов p1
= (p1,
k,
r).
Поэтому (в силу равенства
)
для матрицы
имеет
место:
Рассмотрим
теперь частичное расписание
,
в котором работы упорядочены в
соответствии с перестановкой индексов
p1**
= (p1,
r,
k).
В матрице
выделим
путь
,
состоящий из сегмента
,
который содержит те же элементы-клетки,
что и сегмент
матрицы
,
и критического пути
матрицы
.
Нетрудно видеть, что
,
Путь в матрице A не обязательно является критическим. Поэтому
Сопоставляя
выражения
и
,
получаем
и
что верно при произвольном и, значит, верно, для любого v = . Отсюда следует, что если система неравенств
совместна, то
и условие (3.10) выполнено.
Таким образом, если система неравенств (3.13) верна, то первое неравенство системы (3.8) справедливо при любой начальной последовательности работ .
Перейдем к анализу условия
(второе
неравенство системы (3.8)). Пусть
- некоторая начальная подпоследовательность
в
,
так что частичные расписания (
tk,
tr,
)
и (
,
tr,
tk,
)
определяют «начальные участки»
расписаний
и
соответственно. Для выполнения
рассматриваемого условия достаточно
потребовать, чтобы для любых
и
выполнялось неравенство
С[( tk, tr, ) ,m] ≤ C[( , tr, tk, ) ,m].
Будем
действовать так же, как при выводе
соотношений (3.13). А именно, сопоставим
критические пути в матрицах
(tk,
tr),1≤v≤w≤m,
и
соответствующим
им путям в матрицах
(tr,
tk),
(
,
tr,
tk)
и
(
,
tr,
tk,
).
Имеем:
Таким образом, доказана следующая теорема.
Теорема 3.1. Для того чтобы упорядочение работ (..., tk, tr, ...) доминировало над упорядочением (..., tr, tk, ...), достаточно, чтобы выполнялась система неравенств: