- •Введение
- •Лекция 1 Симплекс-метод
- •1.1 Общая постановка задачи линейного программирования
- •1.2 Некоторые свойства планов
- •1.3 Алгоритм симплекс-метода
- •Лекция 2 Двойственная задача. Двойственный симплекс-метод. Комбинированный метод решения злп
- •2.1 Постановка двойственной задачи
- •2.2 Основные теоремы о двойственности
- •2.3 Решение двойственных задач
- •2.4 Двойственный симплекс-метод
- •Лекция 3 Анализ чувствительности оптимального решения
- •3.1 Матричное представление симплекс-таблиц
- •Анализ чувствительности
- •3.2.1 Изменения, влияющие на допустимость решения
- •3.2.2 Изменения, влияющие на оптимальность решения
- •Лекция 4 Целочисленное линейное программирование
- •4.1 Метод ветвей и границ
- •4.2 Метод отсекающих плоскостей
- •Лекция 5 Методы решения транспортной задачи
- •5.1 Решение транспортной задачи
- •5.1.1 Постановка транспортной задачи
- •6.1.2 Интерпретация метода потенциалов как симплекс-метода
- •5.1.3 Определение начального решения
- •5.1.4 Метод потенциалов
- •5.2 Задача о назначениях
- •Лекция 6 Введение в нейронные сети
- •6.1 История нейронных сетей
- •6.2 Актуальность нейронных сетей
- •6.3 Свойства нейронных сетей
- •6.4 Классификация нейронных сетей
- •6.5 Представление знаний в нейронных сетях
- •Лекция 7 Биологическая и математическая модель нейрона. Персептрон
- •7.1 Модель нейрона
- •7.2 Функции активации в нейронных сетях
- •1 Единичный скачок или жесткая пороговая функция
- •2 Линейная пороговая функция
- •3 Сигмоидальная функция или сигмоид
- •4 Радиально-базисная функция
- •7.3 Обучение нейронной сети
- •7.4 Персептрон
- •Лекция 8 Алгоритм обратного распространения ошибки
- •8.1 Многослойные нейронные сети. Структура
- •8.2 Вывод основных формул алгоритма обратного распространения ошибки
- •Лекция 9 Рекуррентный метод наименьших квадратов
- •9.1 Применение рекуррентного метода наименьших квадратов для обучения нейронных сетей (rls)
- •Библиографический список
- •Заключение
- •Приложение а
5.2 Задача о назначениях
Задача о назначениях заключается в таком выборе распределения ресурсов по объектам, при котором минимизируется стоимость назначений. Предполагается, что каждый ресурс назначается ровно один раз и каждому объекту приписывается ровно один ресурс.
Возможные применения задачи о назначениях можно видеть в таблице 5.7.
Таблица 5.7
Ресурсы |
Объекты |
Критерии эффективности |
Рабочие |
Рабочие места |
Время |
Грузовые автомобили |
Маршруты |
Затраты |
Станки |
Участки |
Объем переработанной продукции |
Экипажи |
Рейсы |
Время простоя |
Коммивояжер |
Города |
Товарооборот |
Матрица стоимостей имеет вид
,
где cij–затраты, связанные с назначением i-го ресурса на j-й объект, i, j=1,…,n,; n – число объектов или ресурсов.
Обозначим
Таким образом, решение задачи можно записать в виде матрицы
.
Допустимое решение называется назначением. Оно строится путем выбора ровно одного элемента в каждой строке матрицы Х и ровно одного элемента в каждом столбце этой матрицы.
Математическая постановка задачи:
Задача о назначениях является частным случаем транспортной задачи, в которой аi=bj=1 ( i=1, … ,n; j=1, … ,n), поэтому ее можно решить с помощью метода потенциалов. Однако более эффективным является метод, учитывающий специфику математической модели и называемый венгерским методом. Рассмотрим его алгоритм:
Цель данного шага – получение максимально возможного числа нулевых элементов в матрице С. Для этого из всех элементов каждой строки вычитается минимальный элемент соответствующей строки, а затем из всех элементов каждого столбца вычитается минимальный элемент соответствующего столбца.
Если после выполнения первого шага в каждой строке и в каждом столбце матрицы С можно выбрать по одному нулевому элементу, то полученное решение будет оптимальным назначением.
Если допустимое решение, состоящее из нулей, не найдено, то надо провести минимальное число прямых через некоторые столбцы и строки матрицы С так, что все нули оказались вычеркнуты. Выбрать наименьший невычеркнутый элемент, этот элемент вычесть из каждого невычеркнутого элемента и прибавить к каждому элементу, стоящему на пересечении проведенных прямых.
Если после проведения третьего шага решения не будет найдено, то процедуру проведения прямых следует повторять до тех пор, пока не будет получено допустимое решение.
При применении рассмотренного алгоритма нужно иметь в виду следующее:
если исходная матрица С не является квадратной, то нужно ввести фиктивные ресурсы или фиктивные объекты так, чтобы матрица стала квадратной;
если какой либо ресурс не может быть назначен на какой-то объект, то соответствующая ему стоимость должна быть выбрана равной достаточно большому значению;
если исходная задача является задачей максимизации, то все элементы матрицы С следует умножить на (-1) и сложить их с достаточно большим числом так, чтобы матрица не содержала отрицательных элементов. Затем можно решить задачу минимизации;
если число линий, необходимое для того, чтобы вычеркнуть нулевые элементы, равно числу строк или столбцов квадратной матрицы, то существует назначение нулевой стоимости.
Контрольные вопросы
Как открытую транспортную задачу свести к закрытой?
Какими методами можно найти начальное допустимое решение для транспортной задачи?
Каким образом при решении транспортной задачи методом потенциалов в текущей итерации находят вводимую в базис переменную?
Каким образом в транспортной задаче в текущей итерации находят исключаемую из базиса переменную?
Можно ли решить задачу о назначениях методом потенциалов?
Если при решении задачи о назначениях венгерским методом при вычеркивании нулей окажется, что вычеркнуты все строки и столбцы, что это означает?