Методы оптимизации
Конспект лекций
назад | содержание | вперед

Тема 4. Свойства и геометрическая интерпретация решений задачи линейного программирования

4.1 Геометрическая интерпретация линейных ограничений

Ограничения задачи линейного программирования представляют собой линейные уравнения (равенства) и неравенства. Множество решений уравнения  является прямой, которая делит плоскость на две полуплоскости, являясь их общей границей. Для всех точек одной из этих полуплоскостей выполнено неравенство , а для всех точек другой — неравенство .

Множество решений уравнения  — это плоскость, которая делит трехмерное пространство на два полупространства, являясь их общей границей. Для всех точек одного из этих полупространств выполнено неравенство

,

а для всех точек другого — неравенство

.

Множество решений уравнения

является гиперплоскостью в пространстве . Гиперплоскость играет в  такую же роль, как прямая на плоскости или плоскость в трехмерном пространстве. Она делит его на два полупространства, являясь границей каждого из них. Для всех точек одного из этих полупространств выполняется неравенство , а для всех точек другого — неравенство

Пересечением семейства множеств {Х1, Х2,…, Хк} называется множество точек, общих для всех элементов этого семейства. Множество Х на плоскости называется многоугольным, если оно является пересечением конечного числа полуплоскостей. Соответственно, множество Х в пространстве  при > 2 называется многогранным, если оно является пересечением конечного числа полупространств.

Множество  в пространстве , состоящее из векторов с неотрицательными координатами называется неотрицательным ортантом.

 

4.2  Свойства      решений задачи  линейного программирования

Для обоснования свойств задачи линейного программирования и методов ее решения приведем несколько основных теорем теории линейного программирования (без доказательств). Для определенности будем рассматривать задачу, поставленную в стандартной форме: определить x=(x1,x2,..,xn), при котором

,

Теорема 4.1. Множество решений системы линейных неравенств является выпуклым замкнутым многогранным множеством в .

Пусть  — любая точка В. Обозначим I() = {i | (аi, ) = bi} — множество индексов неравенств, которые выполняются на  как равенства. Такие неравенства будем называть активными в точке .

 Теорема 4.2. Точка  является крайней точкой множества допустимых, задаваемого системой ограничений задачи линейного программирования, тогда и только тогда, когда в системе ее активных неравенств имеется n линейно независимых, т.е.  ранг системы векторов {аi, } равен n.

Геометрически это означает, что крайняя точка множества решений системы линейных неравенств в  лежит на пересечении n или более граничных гиперплоскостей. В частности, на плоскости крайняя точка системы линейных неравенств лежит на пересечении двух или более граничных прямых.

Теорема 4.3. Если область допустимых решений Х задачи линейного программирования  — ограниченное множество, то оно является выпуклым замкнутым многогранником, любая точка которого представима в виде выпуклой комбинации его вершин.

Теорема 4.4. Пусть в задаче на максимум (минимум) область допустимых решений Х непустая и выполнено одно из условий:

а) Х — ограниченное множество;

б) целевая функция ограничена сверху (снизу) на множестве Х.

Тогда задача имеет оптимальное решение.  

Теорема 4.5. (основная теорема линейного программирования)

 Целевая функция достигает своего оптимального значения в одной из вершин многогранника решений Х. Если оптимальное решение задачи не единственно и целевая функция достигает своего оптимального значения одновременно в нескольких точках множества Х, то она принимает такое же значение в любой точке, являющейся их выпуклой комбинацией.

 

4.3  Графический метод решения задач линейного программирования

Рассмотрим задачу линейного программирования, содержащую две переменные и m ограничений. Ее решения являются двумерными векторами х = (х1х2), т.е. представимы в виде точек на плоскости. Для определенности будем считать, что задача имеет вид:

                                                                          

                                         ,                               

                                                 .                                         

Для нахождения ее решения можно использовать графический метод, который включает следующие этапы:

1)    строится область допустимых решений (ОДР) задачи;

2)    с помощью линий уровня целевой функции находится оптимальная точка, и вычисляются ее координаты.

 

Будем считать, что на плоскости задана система координат х1Ох2. Область допустимых решений задачи  Х  (ОДР) —     множество   точек, удовлетворяющих всем ограничениям задачи. Каждое из m неравенств   определяет некоторую полуплоскость. Для построения этой полуплоскости нужно провести ее граничную прямую, которая задается уравнением  и делит всю плоскость на две полуплоскости. Чтобы определить, по какую сторону от граничной прямой расположена искомая полуплоскость, нужно взять "пробную" точку и подставить ее координаты в левую часть неравенства. При bi ≠ 0 проще всего взять в качестве пробной точки начало координат О=(0,0).

Если координаты пробной точки удовлетворяют этому неравенству, то искомой будет содержащая ее полуплоскость. В противном случае искомой является другая полуплоскость. Найденная полуплоскость обычно выделяют на графике стрелками или штриховкой. Условия неотрицательности переменных также задают две полуплоскости, граничными прямыми которых являются оси координат. Следовательно, Х состоит из точек, которые одновременно принадлежат всем полуплоскостям, т.е. является пересечением + 2 полуплоскостей. Так как полуплоскость — выпуклое замкнутое множество, то Х также будет выпуклым замкнутым множеством.

        Рисунок 4.1 – Пример ОДР             Рисунок 4.2 – Пример ОДР

 

Обычно Х — ограниченное множество. В этом случае оно является выпуклым многоугольником, стороны которого лежат на граничных прямых полуплоскостей, задаваемых ограничениями задачи, а вершины — на пересечении граничных прямых (рис. 4.1). Однако в ряде случаев множество Х является неограниченным. Тогда оно представляет собой выпуклую многоугольную область (рис. 4.2). Заметим, что условие ограниченности ОДР выполняется в большинстве практических задач, например, в моделях нахождения оптимального плана производства. 

Иногда ОДР оказывается вырожденным множеством, т.е. содержит лишь одну точку.

Возможен случай, когда ОДР — пустое множество, т.е. не содержит ни одной точки. Это означает, что условия задачи являются противоречивыми, т.е. не могут быть выполнены одновременно.

 

Подпись: Рисунок 4.3 – Линии уровня и градиент целевой функцииПредположим, что ОДР является выпуклым многоугольником и ищется точка, доставляющая максимум целевой функции Z на этом множестве. Для ее нахождения используем графическое представление функции Z в виде ее линий уровня - множества всех точек, в которых она имеет одно и то же значений. Линии уровня являются параллельными прямыми вида:

,

где значение уровня – параметра h может быть любым числом. В частности, прямая  — это линия нулевого уровня целевой функции (h = 0). Она проходит через начало координат и состоит из точек, в которых значение целевой функции равно нулю.

Ее вектором нормали, т.е. перпендикуляром к этой прямой, является вектор с = (c1, c2), компоненты которого равны коэффициентам при переменных целевой функции (вектор ОС на рис. 4.3). Этот вектор также является градиентом целевой функции, так как  его компоненты   являются  частными производными целевой функции, и задает направление наискорейшего роста ее значений (согласно свойствам вектора-градиента).  Поэтому параллельное перемещение линии уровня в направлении вектора с приведет к возрастанию значений целевой функции.

Следовательно, для нахождения точки максимума нужно построить градиент целевой функции с = (c1, c2), отложив на осях координат значения коэффициентов при переменных. Затем следует провести перпендикулярно ему прямую и перемещать ее параллельно самой себе в направлении градиента до тех пор, пока она имеет общие точки с многоугольником Х.

Процесс перемещения завершится тем, что многоугольник Х окажется по одну сторону от этой прямой, причем будет иметь с ней хотя бы одну общую точку (рисунок  4.4). Такая прямая называется опорной к множеству Х. Любая точка, которая одновременно принадлежит опорной прямой и многоугольнику Х, будет оптимальным решением, так как целевая функция имеет на ней значение, равное ее максимуму на Х.

Рисунок 4.4 – Графическая интерпретация решения

Точки оптимума   лежат на границе многоугольника Х. Если задача имеет единственную точку оптимума, то она является вершиной многоугольника Х (рис. 4.4). Для вычисления значений ее координат следует найти две граничные прямые, на пересечении которых она находится. Так как координаты этой точки удовлетворяют каждому из уравнений этих прямых, их определение сводится к решению системы из двух линейных уравнений с двумя неизвестными.

Обычно задача имеет единственное решение. Однако возможен случай альтернативного оптимума, когда целевая функция принимает свое оптимальное значение более чем в одной точке ОДР. Эта ситуация возникает, если линия уровня параллельна одной из граничных прямых, формирующих ОДР (рис. 4.5). В этом случае множество точек оптимума совпадает с одной из сторон многоугольника Х.

Рисунок 4.5 – Графическая интерпретация в случае не единственного решения задачи

 

Если Х — ограниченное множество, то задача всегда имеет оптимальное решение, которое можно найти графическим методом. Множество точек оптимума будет либо вершиной, либо стороной многоугольника решений. В последнем случае оно представляет собой отрезок прямой, концами которого являются вершины этого многоугольника.

 

Замечания.

1.Решение задачи на нахождение минимума целевой функции

,

аналогично решению задачи на максимум с той лишь разницей, что в этом случае для получения оптимального решения нужно перемещать линию уровня параллельно самой себе в направлении, противоположном градиенту с, до тех пор, пока она имеет общие точки с многоугольником решений.

2. В случае, когда на переменные не накладывается условие неотрицательности, графическое решение проводится аналогично. Разница только в том, что область допустимых решений может располагаться не только в первой (неотрицательной) четверти декартовой системы координат и оптимальная точка может иметь и отрицательные координаты.

Подпись: Рисунок 4.6 – Графическая интерпретация решения: случай не ограниченной ОДРВ некоторых задачах линейного программирования множество Х не ограничено, т.е. является выпуклой многоугольной областью. Сначала рассмотрим случай, когда ищется максимум целевой функции Z, и она ограничена сверху на этом множестве. Тогда графический метод позволяет найти оптимальное решение, так как при перемещении линии уровня она рано или поздно становится опорной к области Х. Множество оптимальных точек может состоять из одной точки, а также быть отрезком или лучом.

Если же целевая функция не ограничена сверху в области Х, то очевидно, что оптимального решения не существует. Графически это означает, что линия уровня может неограниченно перемещаться в направлении градиента целевой функции, имея общие точки с областью Х.

Соответственно, решение задачи на минимум можно найти графическим методом, если целевая функция ограничена на Х снизу. Так на рис. 4.6 целевая функция не ограничена сверху на Х, но ограничена снизу. Поэтому задача отыскания максимума функции Z не имеет решения, а на минимум имеет.

Пример 4.1. Задача о диете (см. лекцию 2)

Изучается вопрос о рационе кормления некоего живого существа. Пусть на данном этапе развития этого существа наиболее важными для него являются три питательных вещества. Условно будем говорить о витаминах Е, F и PP. Пусть в нашем распоряжении два продукта, в которых эти витамины содержатся. Содержание витаминов в единице продуктов и суточная потребность в витаминах задаются в приведенной таблице 4.1.

Таблица 4.1 Данные задачи

Продукт

1

2

Суточная потребность

Е

5

2

10

F

3

4

12

РР

1

5

5

Стоимость единицы продуктов соответственно 13 и 8 денежных единиц.

Обозначим через x1 количество первого продукта, а через x2 — количество второго продукта, включаемых в ежедневный рацион. Приходим к задаче

которую можно проиллюстрировать на двумерной плоскости (см. рис. 4.7). Каждое из неравенств системы ограничений задачи изобразится в виде соответствующей полуплоскости, а все множество допустимых рационов — в виде многоугольной области X, являющейся пересечением этих полуплоскостей. Минимизируемая функция стоимости рациона порождает в качестве своих линий уровня семейство параллельных прямых. Изобразим для примера линию уровня суммы затрат 65. На рисунке  видно, что эта линия пересекает область допустимых рационов X, причем среди точек пересечения имеются и лежащие внутри X. Следовательно, среди допустимых есть и более дешевые рационы. Им будут отвечать линии уровня, располагающиеся ближе к нулю. На рисунке направление перемещения линии уровня в сторону роста значения функции стоимости задано вектором-градиентом  с. Теперь задача поиска допустимого рациона минимальной стоимости на геометрическом языке состоит в том, чтобы перемещать линию уровня в направлении, обратном вектору с, до тех пор пока она пересекается с областью допустимых рационов X.

Рисунок 4.7 – Иллюстрация решения задачи о диете

Изучение рис. 4.7 позволяет выдвинуть гипотезу: оптимальный рацион задается точкой пересечения прямых, отвечающих первым дум ограничениям. Найдем эту точку х*, решая соответствующую систему линейных уравнений:

Решение этой системы  x*=(8/7; 15/7),а стоимость полученного рациона составляет 32 денежных единицы.

Покажем строго аналитически, что действительно х* — оптимальный рацион. Для этого нужно показать, что стоимость любого иного из допустимых рационов не меньше чем 32 денежных единицы. На математическом языке это означает, что для любого решения системы неравенств, описывающих множество X, выполняется неравенство

.

Легко показать, что уже из первых двух ограничений задачи следует требуемое неравенство. Умножив обе части первого ограничения на 2 и сложив со вторым, получим в точности необходимое неравенство.

Возвращаясь к содержательному изложению, доказанный факт можно сформулировать следующим образом: если рацион удовлетворяет ограничениям по потреблению витаминов Е и F, то (независимо от потребления витамина РР) стоимость рациона не может быть меньше, чем 32 денежных единицы. Тем более это верно для рациона, удовлетворяющего также ограничению по потреблению витамина PP. Но стоимость рациона х* и составляет 32 денежных единицы. Таким образом, это рацион с минимальной стоимостью. Оптимальность полученного рациона х* доказана.




наверх


назад | содержание | вперед