- •1.4.Двойственность состоит в том, что каждой исходной (прямой) задаче, в которой целевая функция стремится к максимуму (минимуму)
- •2. Лекции
- •Понятие модели
- •Классификация экономико-математических моделей
- •Оптимизационные модели
- •Лекция 2. Примеры содержательных постановок задач линейного программирования
- •Задача об оптимальном использовании ресурсов
- •Транспортная задача линейного программирования
- •Стандартная форма задачи линейного программирования
- •Каноническая форма задачи линейного программирования (злп)
- •Лекция 3. Различные формы задач линейного программирования
- •Переход от стандартной формы задачам линейного программирования (злп) к канонической
- •Лекция 4. Графический метод решения задач линейного программирования
- •Лекция 5. Основные теоремы линейного программирования
- •Геометрическая интерпретация симплекс-метода
- •Основное неравенство теории двойственности
- •Лекция 8. Основные теоремы двойственности
- •Лекция 9. Задачи нелинейного программирования
- •Метод множителей Лагранжа
- •Выпуклое программирование
- •Задача выпуклого программирования
- •Градиентные методы
- •Метод параллельных касательных
- •Метод сопряженных градиентов
- •Метод покоординатного спуска
- •О методах второго порядка
- •О методах прямого поиска
- •Методы одномерной минимизации
- •1. Задачи с ограничениями-равенствами
- •2. Задачи с ограничениями-неравенствами
- •2.1. Метод проекции градиента
- •2.2. Метод приведенного градиента
- •Методы штрафных функций
- •Методы барьерных функций
- •Лекция 14. Практическая реализация методов нелинейного программирования
- •Построение начального приближения
- •Практическая реализация методов нелинейного программирования
- •3. Практические и лабораторные занятия
- •4. Самостоятельная работа студента
- •Задача об оптимальном использовании ресурсов
- •Транспортная задача линейного программирования
- •Стандартная форма задачи линейного программирования
- •Основное неравенство теории двойственности
- •Экономический смысл первой (основной) теоремы двойственности
Переход от стандартной формы задачам линейного программирования (злп) к канонической
Разнообразие форм задач линейного программирования затрудняет исследование их общих особенностей и создание общих методов и вычислительных алгоритмов для их решения. Поэтому естественно рассмотреть способ сведения любой задачи линейного программирования к наиболее простой и удобной для исследования форме — канонической.
Рассмотрим, каким образом можно перейти от стандартной форме записи к канонической. Для осуществления данного перехода нужно в каждое из m неравенств системы ограничений ввести m дополнительных неотрицательных переменных: хп+ь хп+2, хп+га, тогда система ограничений примет вид:
(4)
здесь xn+1, xn+2,...xn+m — выравнивающие балансовые переменные, где xj 0, где (j = I ...n+m). Добавив эти балансовые переменные в неравенства, превращаем их в уравнения.
Если же в стандартной форме требовалось минимизировать целевую функцию, то, заменив ее знак на «-», получим:
(5)
Таким образом, с помощью представленных преобразований мы перешли от стандартной формы ЗЛП к ее канонической форме.
Для решения этой задачи необходимо найти такой вектор Х=(х1, х2,x3,…,хn+m), который удовлетворял бы системе ограничений (4) и при котором целевая функция (5) принимала бы максимальное значение.
Пример
Пусть задача линейного программирования задана в стандартной форме: F = 2х, + Зх2 —> max при ограничениях:
Приведем эту задачу к каноническому виду.
Обратим имеющуюся систему неравенств в равенства, водя для этого в каждое из них соответствующую неотрицательную переменную:
В данном примере все дополнительные переменные введены со знаком «+», так как рассматриваемые неравенства имеют знак .
(Необходимо заметить, что в том случае, если неравенства имели бы знак , переменные нужно было бы вводить со знаком «-».)
Вопросы для самоконтроля:
1.Примеры задач линейного программирования (ЛП).
2.Формулировка общей задачи математического программирования.
Рекомендуемая литература:
1.Акулич И.Л. Математическое программирование в примерах и задачах. — М.: Высш. шк., 1986.
2.Алексеев В.М., Галеев Э.М., Тихомиров В.М. Сборник задач по оптимизации. М.: Наука, 1984.
Лекция 4. Графический метод решения задач линейного программирования
Содержание лекционного занятия:
ЗЛП имеет единственное решение
ЗЛП имеет альтернативный оптимум
ЗЛП имеет минимум и не имеет максимума
ЗЛП не имеет решения
Графический метод решения задачи линейного программирования имеет весьма ограниченную область применения. Как правило этим методом решаются задачи, содержащие не более двух переменных.
Пример
Найти решение X*=(x*1,x*2), которое удовлетворяет системе неравенств:
(1)
условиям неотрицательности переменных: x10, x20, (2)
и которое доставляет оптимальное значение целевой функции:
f = c1 x1+с2х2 —»max(min). (3)
Необходимо отметить, что, несмотря на ограниченность применения, данный метод очень полезен для иллюстрации общих идей методов, используемых для решения задач линейного программирования.
Применение геометрического метода предполагает использование нескольких этапов.
На первом из них в системе координат Х1 ОХ2 строится область допустимых решений задачи (ОДЗ). Для этого каждое из неравенств системы (1) заменяем равенством и строим соответствующие этим равенствам граничные прямые:
a i1x1+ai2 x2=bi (i=l.. .m).
Каждая из этих прямых делит плоскость XiOX2 на две полуплоскости (рис. 1). Для точки (.) А, принадлежащей одной из этих полуплоскостей, выполняется неравенство:a i1x1+ai2 x2bi (i=l.. .m).
Для любой (.)В, принадлежащей другой полуплоскости, — противоположное неравенство: a i1x1+ai2 x2bi (i=l.. .m).
А для любой из точек, лежащих на граничной прямой, выполняется уравнение: a i1x1+ai2 x2=bi (i=l.. .m).
решения, удовлетворяющие рассматриваемому неравенству, достаточно испытать одну какую-либо точку, например точку с координатами (0,0). Если при подстановке ее координат в левую часть неравенства оно удовлетворяется, значит, искомая полуплоскость содержит данную точку и штриховка, выделяющая искомую полуплоскость, обращена в сторону к испытуемой точке.
Если же неравенство не удовлетворяется, штриховка, выделяющая искомую полуплоскость, обращена в противоположную от данной точки сторону.
Рис.1. Построение ОДЗ
Чтобы графически определить, по какую сторону от граничной прямой располагается полуплоскость, содержащая
Неравенства x10, x20, также соответствуют полуплоскостям, одна из которых расположена справа от оси ординат, а другая - над осью абсцисс (рис. 1).
Выделив полуплоскости, содержащие решения, удовлетворяющие неравенствам, входящим в рассматриваемую систему, мы определим область, в которой находятся решения, удовлетворяющие всем ограничениям, входящим в рассматриваемую систему неравенств. Именно эта область и есть область допустимых решений задачи.
В общем случае область допустимых решений систем неравенств (1) и (2) может быть:
пустой, что означает несовместимость систем неравенств:
одной точкой:
выпуклым многоугольником:
неограниченной выпуклой многоугольной областью:
Х2
Рассмотренные примеры позволяют сделать следующий вывод: область допустимых решений системы неравенств может быть пустой, одной точкой, выпуклым многоугольником или неограниченной выпуклой многоугольной областью.
На втором этапе формируется графическое изображение целевой функции.
Уравнение:
c1 x1+c2x2 =L при фиксированном значении L определяет прямую, а при изменении L — семейство параллельных прямых с параметром L. Вектор C=(c1, c2), перпендикулярный ко всем этим прямым, показывает направление возрастания параметра L. Так, на рис. 2 показаны прямые, соответствующие уравнению
2x1+3x2=L при L=-3, 0, 3, 9.
Рис.2. Графическое изображение целевой функции
Для всех точек, лежащих на одной из этих прямых, функция F принимает одно определенное значение, равное соответствующему значению L. Поэтому рассматриваемые прямые называются линиями уровня для параметра L.
Важное свойство линий уровня в том, что при их параллельном смещении в одном направлении уровень (значение L) только возрастает, а при смещении в другом — только убывает.
Построим, для рассмотренного выше примера линии уровня и определим направление их возрастания.
Чтобы построить вектор С=(с1,с2), можно использовать следующий прием: по оси X1 откладывается значение первой компоненты вектора с1=2, а по оси Х2 — значение второй компоненты с2=3.
По найденным координатам строим прямоугольник и находим направление возрастания вектора С. Затем перпендикулярно вектору С строим линии уровня.
Построив на одном рисунке (рис. 3) область допустимых решений, вектор С, и перпендикулярную ему одну из линий уровня, можно путем ее параллельного перемещения в направлении, указанном вектором С (или в противоположном), определить точку в области допустимых значений, которая доставляет максимум или минимум целевой функции.
На рис. 3 видно, что в крайнем положении линия уровня проходит через (.) В. При дальнейшем ее перемещении она уже не будет иметь общих точек с областью допустимых решений. Таким образом, искомое оптимальное решение, которое графически соответствует координатам (.)В, можно найти путем совместного решения системы двух уравнений, соответствующих граничным прямым АВ иВД.
Если при тех же исходных данных требовалось бы достичь минимума функции F, то, очевидно, линию уровня пришлось бы перемещать в направлении, противоположном вектору С. В этом случае оптимальное решение, соответствующее минимуму функции F, определялось бы координатами точки (.) 0.
Рис. 3. Определение оптимального решения графическим методом
В зависимости от вида области допустимых решений и положения линий уровня возможны следующие случаи:
ЗЛП имеет единственное решение
ЗЛП имеет альтернативный оптимум
ЗЛП имеет минимум и не имеет максимума
ЗЛП не имеет решения
Вопросы для самоконтроля:
1.Геометрическое решение задач ЛП.
2. Элементы геометрии в n - мерном пространстве.
Рекомендуемая литература:
1.Ашманов С.А. Линейное программирование. —М.: Наука, 1981.
2.Айсагалиев А.С., Айсагалиева С.С. Лекции по методам оптмизации.-Алматы:Гылым,1996
