
- •Линейное программирование
- •Часть I Содержание:
- •1. Основные понятия
- •1.1. Примеры моделей, приводящих к задачам линейного программирования
- •Задача о диете
- •1.2. Стандартная и каноническая формы задачи линейного программирования
- •Первая стандартная форма задачи линейного программирования имеет вид
- •Канонической формой задачи линейного программирования называется задача вида
- •5. Ограничения на неотрицательность переменных.
- •1.3. Геометрическая интерпретация задач линейного программирования
- •Решение
- •Решение
- •Решение
- •2. Симплекс-метод
- •2.1. Выпуклые множества и многогранники
- •Доказательство
- •Доказательство.
- •Доказательство
- •2.2. Вершины выпуклого многогранника
- •Определение. Вершиной или крайней точкой выпуклого многогранника называется любая его точка, которая не является внутренней точкой никакого отрезка, целиком принадлежащего этому многограннику.
- •Доказательство
- •Доказательство
- •Доказательство
- •Доказательство
- •2.3. Переход от вершины к вершине
- •2.4. Переход к новому базису
- •2.5. Отыскание оптимального плана
- •Доказательство:
- •Доказательство:
- •2.6. Алгоритм симплекс-метода
- •Этап 1 Просматривается дополнительная строка снизу, где записаны разности .
- •Первая итерация
- •И он достигается на векторе , то этот вектор подлежит выводу из базиса и соответствующая ему строка и будет направляющей строкой.
- •Вторая итерация
- •2.7. Метод искусственного базиса
- •Вариант 1
- •Вариант 2
- •Первая итерация Так как из базиса выводится вектор , то в получающейся симплекс-таблице соответствующий столбец сразу удаляется.
- •Вторая итерация
- •Третья итерация Мы вернулись к исходной задаче и продолжаем решать ее по стандартной схеме.
- •3. Двойственные задачи
- •3.1. Постановка двойственных задач Симметричные двойственные задачи
- •Несимметричная двойственная задача
- •Переменные называется по-разному. Часто их называют учетными, неявными или фиктивными ценами.
- •3.2. Свойства двойственных задач
- •Доказательство.
- •1. Симметричная пара
- •2. Несимметричная пара Доказательство в этом случае почти дословно повторяет предыдущее.
- •Теорема 3. ( в формулировке для несимметричной двойственной задачи)
- •Доказательство.
- •Теорема 3. (в формулировке для симметричной двойственной задачи).
- •3.3. Двойственный симплекс-метод
- •4. Транспортная задача
- •4.1. Постановка задачи
- •Приведение открытой транспортной задачи к сбалансированной
- •4.2. Простейшие свойства транспортной задачи
- •Доказательство
- •Доказательство
- •Доказательство
- •4.3. Методы определения первоначального опорного плана
- •4.3.1. Построение исходного опорного плана (метод северо-западного угла)
- •Пример 1
- •Пример 2
- •4.3.2. Метод минимального (максимального) элемента
- •Пример № 2
- •Решение:
- •4.3.3. Метод аппроксимации Фогеля
- •Решение:
- •4.3.4. Метод двойного предпочтения
- •4.4. Методы проверки опорного плана на оптимальность
- •4.4.1. Потенциалы. Критерий оптимальности плана
- •4.4.2. Дельта-метод
- •4.5. Алгоритм улучшения плана
- •Вторая итерация Этап 1
- •Третья итерация Этап 1
- •Теорема Если все запасы и все потребности целые числа, то оптимальный план перевозок тоже целочисленный. Доказательство
- •4.6. Снятие вырожденности
- •4.6.1. Эпсилон-прием
- •Построение исходного опорного плана.
- •Первая итерация
- •Вторая итерация Этап 1
- •Третья итерация Этап 1
5. Ограничения на неотрицательность переменных.
Во всех приведенных выше формах требуется, чтобы все переменные были
неотрицательны,
т.е.
|
|
.В реальных задачах часто
на переменные накладываются ограничение
вида
|
неотрицательности какой-то переменной |
может отсутствовать вообще. |
Рассмотрим, как поступать в этих случаях.
а) Пусть на переменную
вообще
не наложено никаких ограничений. Для
приведения задачи к канонической форме
введем две новые переменные
и
и
будем считать, что
После этого, заменив в исходной задаче
на
мы
получим задачу линейного программирования
в канонической форме.
б) Пусть на
наложено
двустороннее ограничение вида
.Введем
переменную
.
Тогда будет
,
что дает ограничения в стандартной
форме.
Вводя дополнительную неотрицательную переменную , можно записать двустороннее ограничение в виде
|
(1.18) |
После того, как в исходных соотношениях
вместо
будет
подставлено выражение
и
добавлено ограничение (1.18), задача
приобретет канонический вид.
Задачи
А. Привести к канонической форме следующие задачи линейного программирования.
1.
2.
3.
4.
Б. Напишите задачи 1,2 в стандартных формах.
1.3. Геометрическая интерпретация задач линейного программирования
Для понимания всего дальнейшего полезно знать и представлять себе геометрическую интерпретацию задач линейного программирования, которую можно дать для случаев n =2 и n =3.
Наиболее наглядна эта интерпретация для случая n =2, т.е. для случая двух переменных и . Пусть нам задана задача линейного программирования в стандартной форме
Возьмём на плоскости декартову систему
координат и каждой паре чисел
поставим
в соответствие точку на этой плоскости.
Обратим прежде всего внимание на
ограничения
и
.
Они из всей плоскости вырезают лишь её
первую четверть (см. рис. 1). Рассмотрим
теперь, какие области соответствуют
неравенствам вида
.
Сначала рассмотрим область, соответствующую
равенству
.
Как Вы, конечно, знаете, это прямая линия.
Строить её проще всего по двум точкам.
Пусть
.
Если взять
,
то получится
.
Если взять
,
то получится
.
Таким образом, на прямой лежат две точки
и
.
Дальше через эти две точки можно по
линейке провести прямую линию (смотри
рисунок 2).
Если же b=0, то на прямой лежит точка (0,0). Чтобы найти другую точку, можно взять любое отличное от нуля значение и вычислить
соответствующее ему значение . |
Эта построенная прямая разбивает всю
плоскость на две полуплоскости. В одной
её части
,
а в другой наоборот
.
Узнать, в какой полуплоскости какой
знак имеет место проще всего посмотрев,
какому неравенству удовлетворяет
какая-то точка плоскости, например,
начало координат, т.е. точка (0,0).
Пример
Определить полуплоскость, определяемую
неравенством
.