- •Исследование операций и методы оптимизации
- •Введение
- •1. Общая постановка задачи линейного программирования. Графическое решение злп. Каноническая форма. Базисное решение
- •Основные определения
- •. Графический метод решения задачи линейного программирования
- •Лабораторная работа №1
- •1.3. Каноническая форма задачи линейного программирования. Приведение к канонической форме
- •1.4. Базисное решение злп
- •1.5. Перестроение базисного решения злп
- •Лабораторная работа № 2
- •2. Симплекс-метод
- •2.1. Основная теорема линейного программирования
- •2.2. Алгоритм симплекс метода
- •Лабораторная работа № 3
- •2.3. Симплекс-метод с искусственным базисом
- •Лабораторная работа №4
- •3. Двойственность в злп
- •Основные понятия и определения
- •3.2. Леммы и теоремы двойственности
- •Лабораторная работа № 5
- •4. Транспортная задача
- •4.1. Математическая модель транспортной задачи
- •4.2. Построение начального базисного решения
- •4.3. Метод потенциалов
- •4.4. Правило вычеркивания
- •4.5. Транспортные задачи, имеющие усложнения в постановке
- •Лабораторная работа № 6
- •5. Теория расписаний
- •5.1. Общие положения
- •5.2. Задача о назначениях
- •5.2.1. Постановка задачи
- •5.2.2. Способ задания задачи о назначениях и ее анализ
- •5.2.3. Венгерский метод
- •Лабораторная работа №7
- •5.4. Система конвейерного типа с двумя приборами
- •5.4.1 Постановка задачи
- •5.4.2. Диаграмма Гантта
- •5.4.3. Вычисление длины расписания
- •Достаточное условие оптимальности расписания
- •5.4.4. Алгоритм построения расписания минимальной длины
- •5.5. Конвейерная система с тремя и более приборами
- •5.5.1. Вычисление длины расписания для системы с тремя приборами
- •5.5.2. Системы, для которых возможно построение оптимального расписания
- •5.5.3. Эвристические алгоритмы
- •5.5.4. Оценки длины расписаний
- •Лабораторная работа № 8
- •Библиографический список
- •Исследование операций и методы оптимизации
- •230700 «Прикладная информатика»
- •3 94006 Воронеж, ул. 20-летия Октября, 84
5.2. Задача о назначениях
5.2.1. Постановка задачи
Вербальная модель
Пусть имеется n – приборов (станков) и n – требований (деталей). Каждое требование может обслуживаться (каждая деталь может обрабатываться) на любом из приборов.
– длительность обслуживания i-го требования на приборе j.
Требуется распределить все требования по приборам так, чтобы на каждый прибор попало ровно одно требование и чтобы среднее время обслуживания было минимальным.
Математическая модель
Введем
(5.2.1)
, если i-е требование обслуживается j-м прибором;
, если i-е требование не обслуживается.
Ограничения:
, (5.2.2)
каждое требование обслуживается ровно одним прибором.
, (5.2.3)
каждый прибор обслуживает ровно одно требование.
Целевая функция имеет вид
.
Замечание. Так как коэффициент не влияет на положение оптимальной точки, то целевую функцию можно заменить на функцию
, (5.2.4)
где .
5.2.2. Способ задания задачи о назначениях и ее анализ
Как видно из математической модели (5.2.1)-(5.2.4), задача о назначениях является транспортной задачей с квадратной матрицей , в которой для всех i и j, , поэтому, чтобы задать задачу о назначениях, достаточно только задать квадратную матрицу С.
Заметим, что задача о назначениях является транспортной задачей, если ограничение (5.2.2) заменить ограничением . Возникает вопрос, если исправленную задачу решить методом потенциалов, то будет ли решение удовлетворять ограничению (5.2.2).
Однако известно, что транспортная задача с целыми правыми частями имеет целочисленное решение. Правые части задачи о назначениях равны единице, то есть целым числам, значит, и все также целые числа, при этом из (5.2.2)-(5.2.3) следует, что все , следовательно, они могут принимать значения только ноль и единица.
Отсюда любое допустимое решение задачи о назначениях может быть представлено в виде квадратной матрицы Х, в которой в каждом столбце и каждой строке имеется по одной единице. Все остальные элементы матрицы равны нулю. Например, матрица Х может иметь вид (рис. 5.1).
Х= |
|
1 |
|
|
1 |
|
|
|
|
|
|
1 |
|
|
|
|
|
1 |
Рис. 5.1
То есть матрица Х имеет ровно n ненулевых элементов. Если решать задачу методом потенциалов, то базисное решение х должно иметь (2n-1) базисную компоненту, и так как число единиц равно n, то базисное решение должно быть дополнено (n-1) нулем. Отсюда следует, что базисное решение является сильно вырожденным, а это является существенной помехой для использования метода потенциалов ( часто будет равно нулю). Поэтому для решения задачи о назначениях может быть предложен другой метод, существенно использующий тот факт, что ненулевые компоненты решения равны единице. В этом случае матрицу Х можно вообще не задавать, а на матрице С пометить (крышкой) элементы, которым соответствуют единичные компоненты матрицы Х. Тогда значение целевой функции будет равно
.
Рассмотрим свойства матрицы С.
Свойство 1. Если из всех элементов одной строки или одного столбца матрицы С вычесть одно и то же число , то оптимальное решение новой задачи будет совпадать с оптимальным решением исходной задачи, а оптимальное значение целевой функции новой задачи уменьшится по сравнению с оптимальным значением целевой функции исходной задачи на величину :
.
Свойство 2. Без ограничения общности мы можем считать, что .
Свойство 3. Пусть все и существуют , тогда, если удается найти допустимое решение такое, что все соответствуют , то полученное допустимое решение оптимально.
Определение 1. Пусть все элементы матрицы С больше или равны нулю и существуют . Нули матрицы С называются независимыми, если они стоят в разных строках и столбцах матрицы С.
Так как любое допустимое решение задачи о назначениях имеет n единиц, стоящих в разных строках и столбцах, то, как следует из Свойства 3, для того, чтобы могло быть найдено оптимальное решение задачи о назначениях, надо, чтобы матрица С имела n независимых нулей. Отсюда следует, что для нахождения оптимального решения необходимо воспользовавшись свойством 1, путем вычитания из строк и столбцов некоторых чисел, получить новую матрицу С, имеющую n независимых нулей. Этот метод называется Венгерским методом.