- •Н. В. Алексенко р. И. Воробьева
- •Оглавление
- •Введение
- •1. Основные методы решения задач линейного программирования
- •1.1. Введение в линейное программирование
- •1.1.1. Общая задача оптимизации
- •1.1.2. Задачи линейного программирования
- •1.1.3. Стандартная и каноническая задачи линейного программирования
- •1.2. Графический метод решения задачи линейного программирования
- •1.3. Симплекс-метод
- •1.3.1. Идея симплекс-метода
- •1.3.2. Алгоритм симплекс-метода
- •Алгоритм симплекс-метода
- •Алгоритм поиска первоначального опорного плана
- •1.4. Двойственность в линейном программировании
- •1.4.1. Постановка двойственной задачи
- •1.4.2. Теоремы двойственности
- •1.4.3. Двойственный симплекс-метод
- •1.4.4. Экономическая интерпретация задачи, двойственной задаче об использовании ресурсов
- •Исходная задача
- •Двойственная задача
- •1.5. Вопросы для самопроверки
- •2.1. Постановка задачи
- •2.2. Построение первоначального опорного плана транспортной задачи методом наименьших затрат
- •2.3. Проверка найденного опорного плана на оптимальность
- •2.4. Переход от одного опорного плана транспортной задачи к другому
- •2.5. Альтернативный оптимум
- •2.6. Открытая модель транспортной задачи
- •2.7. Приложение транспортной задачи к решению некоторых экономических задач
- •2.8. Вопросы для самопроверки
- •3. Целочисленное программирование
- •3.1. Общая постановка задачи
- •3.2. Метод отсечения Гомори
- •3.3. Графический метод решения задачи целочисленного программирования
- •3.4. Вопросы для самопроверки
- •4. Теория игр
- •4.1. Основные понятия
- •4.2. Решение игр 2 х 2 в смешанных стратегиях графическим способом
- •4.3. Решение игр 2 х n графическим способом
- •4.4. Решение игры n х 2 графическим способом
- •4.5. Сведение матричной игры m X n к задаче линейного программирования (решение любой матричной игры)
- •Функции дохода
- •6.2. Способы представления графов
- •6. 3. Некоторые задачи теории графов
- •6.3.1. Поиск кратчайшего пути в графе
- •Алгоритм поиска кратчайшего пути
- •6.3.2. Поиск кратчайшего гамильтонова цикла
- •6.4. Вопросы и задачи для самопроверки
- •7. Оптимизация сетевого графика
- •7. 1. Сетевая модель. Основные понятия
- •7.2. Основные требования к сетевому графику
- •7.3. Расчет временных параметров сетевого графика
- •7.3.1. Расчет параметров событий
- •Учитывая введенное в п.7.1 определение критического пути и введенные формулы (7.1–7.3), можно записать алгоритм нахождения критического пути.
- •7.3.2. Расчет параметров работ
- •7.3.3. Сетевое планирование в условиях неопределенности
- •7.4. Вопросы и задачи для самопроверки
- •8. Решение задач на компьютере
- •8.1. Решение задач с использованием системы Mathcad
- •8.2. Решение задач линейного программирования с помощью приложения Excel
- •Заключение
- •Библиографический список
- •Приложение
- •Алексенко Наталья Владимировна
- •Воробьева Раиса Ивановна
- •Математика
- •Основные задачи
- •Математического программирования
- •И реализация их на компьютере
- •644099, Омск, ул. Красногвардейская, 9
Алгоритм поиска первоначального опорного плана
Если в столбце свободных членов есть отрицательные элементы, выбираем из них максимальный по модулю, а в его строке – любой отрицательный. Взяв его в качестве разрешающего элемента, пересчитываем таблицу по правилам 3в–3ж предыдущего алгоритма. Если строка не содержит отрицательных элементов, то система ограничений несовместна, т. е задача решений не имеет.
Если в полученной таблице все элементы столбца свободных членов стали неотрицательными, то данное базисное решение можно взять в качестве первоначального опорного плана и решать задачу симплекс-методом. Иначе переходим к пункту 1.
1.4. Двойственность в линейном программировании
1.4.1. Постановка двойственной задачи
Каждую задачу линейного программирования можно определенным образом сопоставить с другой задачей линейного программирования, называемой двойственной по отношению к исходной. Совместное изучение исходной задачи и двойственной к ней дает, как правило, значительно больше информации, чем изучение каждой из них в отдельности.
Пусть дана пара задач линейного программирования.
Задача 1 – исходная Задача 2 – двойственная
при ограничениях при ограничениях
|
|
любая
любая |
|||
|
любая
любая |
|
|
||
Условия
задач 1 и 2, соответствующие друг другу
по стрелке
,
называются сопряженными.
Задачи 1 и 2 называются двойственными
друг к другу.
Смысл, который вкладывается в это
название, состоит в следующем.
1. В одной задаче ищут максимум линейной функции, а в другой – минимум.
2. Коэффициенты при переменных в целевой функции одной задачи являются свободными членами системы ограничений в другой.
3. Каждому ограничению одной задачи соответствует переменная другой задачи.
4. Коэффициенты системы ограничений одной задачи образуют транспонированную матрицу коэффициентов системы ограничений другой.
5.
В задаче на максимум все неравенства
системы ограничений имеют вид «
»,
а в задаче на минимум – вид «
».
Если для некоторого неравенства это
требование не выполняется, то его
умножают на (–1).
Пример. Построить задачу, двойственную следующей задаче:
.
Прежде чем приступить к составлению двойственной задачи, необходимо упорядочить запись исходной задачи, согласовав знаки неравенств в ограничениях с целевой функцией, а затем по правилам 1–5 составить двойственную задачу.
Исходная задача |
Двойственная задача |
|
|
1.4.2. Теоремы двойственности
Двойственность является одним из функциональных понятий теории линейного программирования. Исключительно важную роль играют следующие утверждения, получившие название теорем двойственности.
Первая
основная теорема двойственности.
Если разрешима
одна из пары двойственных задач, то
разрешима и другая задача, причем
оптимальные значения целевых функций
совпадают, т. е.
.
Если
в одной из двойственных задач целевая
функция не ограничена, т. е.
или
,
то другая задача не имеет допустимых
решений.
Вторая
теорема двойственности (критерий
оптимальности). Для
оптимальности допустимых решений
и
пары двойственных задач необходимо и
достаточно, чтобы они обращали в равенство
хотя бы одно из каждой пары сопряженных
условий.
Сформулированные теоремы позволяют определить оптимальное решение одной из пары задач по решению другой.
Рассмотрим решение задач с использованием теорем двойственности.
Пример 1. Решить двойственную задачу, если известна прямая задача и её оптимальное решение:
Составим двойственную задачу.
Исходная задача |
Двойственная задача |
|
|
Обозначим
оптимальное решение двойственной задачи
.
На основании 1-й теоремы двойственности
,
т. е.
.
Подставим
в условие исходной задачи, а
в условие двойственной задачи. По 2-й
теореме двойственности хотя бы одно из
сопряженных условий должно обращаться
в равенство. Из этого имеем:
|
|
Из полученных уравнений в системе ограничений двойственной задачи найдем :
,
причем
.
Пример 2. Не решая задачи
исследовать
на оптимальность план
.
Указанный
план является допустимым, т. к. он
удовлетворяет ограничениям данной
задачи. По 1-й теореме двойственности,
если
– оптимальный план, то двойственная
задача также имеет оптимальное решение,
обозначим его
.
Выпишем пару двойственных задач.
|
|
При , с учетом 2-й теоремы двойственности :
-
любая,
любая.любая.
.
Полученная
система уравнений
несовместна,
что противоречит
выводу о разрешимости двойственной
задачи, следовательно, предположение
об оптимальности плана
ошибочно.
