- •Математические методы теории оптимизации. Понятие экстремальных задач, примеры. Основные понятия лп.
- •Историческая справка.
- •Задача планирования производства.
- •Задача о рационе.
- •Транспортная задача.
- •Раздел 1. Линейное программирование.
- •Определение канонической формы задач.
- •Основные свойства решения задач лп
- •Элементы выпуклого анализа.
- •Множество решений задачи линейного программирования (если оно не пусто) является выпуклым многогранником.
- •Любая точка многогранника решений является линейно - выпуклой комбинацией его угловых точек. Опорное и базисное решение.
- •Алгебраическая характеристика угловой точки.
- •Симплексный метод.
- •Задача № 1.
- •Правило определения вектора вводимого в базис.
- •Метод искусственного базиса (м-метод).
- •Расширенная задача.
- •Исходная симплекс-таблица расширенной задачи.
- •Теория двойственности в линейном программировании.
- •Экономическая интерпретация
- •Виды моделей двойственных задач.
- •Соответствие между прямой и двойственной задачами.
- •Нахождение решения двойственной задачи по симплекс-таблице оптимального решения прямой задачи.
- •Экономическая интерпретация двойственности.
- •Экономическая интерпретация переменных двойственных задач.
- •Раздел II. Специальные задачи лп Целочисленное программирование.
- •Задачи целочисленного программирования.
- •Пример: «Задача о рюкзаке (задача загрузки корабля)»
- •Пример: «Задача о распределение инвестиций»
- •Первый алгоритм Гомори (аддитивный)
- •Алгоритм Гомори состоит из двух шагов:
- •Метод ветвей и границ.
- •Специальные виды целочисленных задач. Транспортная задача
- •Методы решения транспортной задачи
- •Вторая транспортная теорема
- •Метод потенциалов (Канторович)
- •Алгоритм решения
- •Задача о назначениях. Венгерский алгоритм.
- •А лгоритм решения:
А лгоритм решения:
1) из всех элементов каждой строки и каждого столбца матрицы C= cij вычитаем наименьший элемент соответствующей строки pi (или столбца qj).
2) проводим поиск допустимого решения, единичные элементы которого соответствуют нулевым коэффициентам модифицированной матрицы.
Определение: Модифицированная матрица стоимостей – матрица, из всех элементов каждой строки и каждого столбца которой нельзя вычесть никаких элементов, не получив отрицательных (это матрица, полученная преобразованиями из исходной матрицы, указанной в пункте 1).
Если такое допустимое решение существует, то оно оптимальное, в противном случае матрица C модифицируется еще один раз, но уже другим способом.
Алгоритм состоит из трех шагов:
1) редукция (сокращение) строк и столбцов
2) попытка определения назначения
3) модификация редуцированной матрицы
Шаг 1. Цель шага – получить максимально возможное число нулей в матрице C путем вычитания из элементов каждой строки и каждого столбца наименьших элементов соответствующих строк и столбцов.
Шаг 2. Если после редукции можно выбрать в каждой строке и в каждом столбце по одному нулевому элементу так, что соответствующее этим элементам решение будет допустимым, то данное назначение оптимальное. Если нет, то переходим к шагу 3.
Шаг 3. Если нулевых элементов недостаточно, то получить необходжимые новые нулевые элементы можно следующим образом. Для этого определим минимальное множество строк и столбцов редуцированной матрицы, содержащей все нулевые элементы, и найдем минимальный элемент матрицы вне множества элементов, составляющих совокупность выбранных строк и столбцов. Если значение найденного элемента вычесть из других элементов матрицы C, то получим отрицательные величины, и по крайней мере один элемент, не принадлежащий множеству элементов, входящих в выделенные строки и столбцы, будет равен 0.
Однако, назначение нулевой стоимости будет не оптимальным, так как C содержит отрицательные элементы. Для того, чтобы матрица C не содержала отрицательные элементы, прибавляем абсолютную величину наименьшего отрицательного элемента ко всем элементам выделенных строк и столбцов. При этом к элементам, расположенным на пересечениях выделенных строк и столбцов, данная величина прибавляется дважды, и, таким образом, все отрицательные элементы преобразовываются в нулевые или положительные. В результате шага 3 получаем новую редуцированную матрицу, которая содержит хотя бы на один ноль больше, который расположен вне строк и столбцов выделенного множества, и таким образом за конечное число шагов 3 мы придем к оптимальному решению.
Пример:
q3=2
(1,1) (2,3) (3,2) – оптимальное назначение.
На самом деле стоимость будет равна Z = p1+p2+p3+q3
Но, к сожалению, не всегда удается определить допустимое назначение таким образом. Поэтому рассмотрим следующий пример:
Оптимальное назначение: (1, 1) (2, 3) (3, 2) (4, 4)