Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции по ДГМ.doc
Скачиваний:
5
Добавлен:
01.05.2025
Размер:
2.33 Mб
Скачать

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

Свойства ЗЛП:

  1. Допустимое множество (удовлетворяющее системе-ограничений и условию неотрицательности переменных) ЗЛП либо пусто (система ограничений несовместна), либо является выпуклым подмножеством пространства Rn;

  2. Если допустимое множество ЗЛП не пусто, а целевая функция ограничена сверху для задачи максимизации (снизу для задачи минимизации) на этом множестве, то ЗЛП имеет оптимальное решение;

  3. Оптимальные решения ЗЛП (если они существуют) всегда находятся на границе допустимого множества и образуют выпуклое подмножество пространства Rn.

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

Пусть имеется n точек А1, А2, …, Аn. Точка А – выпуклая линейная комбинация, если выполняются условия:

, , ,

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

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

Графическим методом можно решать задачу линейного программирования с двумя переменными.

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

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

Алгоритм таков:

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

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

  3. Провести линию уровня функции, перпендикулярную градиенту.

  4. Передвигать линию уровня параллельно самой себе до касания с множеством допустимых решений. Точки касания являются точками экстремума.

Теорема:

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

  1. Классифицировать точки касания с использованием свойств градиента.

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

Пример:

Решить графически ЗЛП:

Воспользуемся алгоритмом. В задаче "а" (рис. 1,а) в точке А = (0; 1) достигается максимум, а в точке В = (1; 0) - минимум. Очевидно, и минимум, и максимум единственные.

В задаче "б"(рис. 1,6) в точке С = (1; 0) достигается максимум, а на отрезке АВ - минимум, т.е. имеется бесконечное множество решений.

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

Рис.1

Пример:

Найти максимум и минимум в задаче

Решается каноническая задача. Переменные х3 и х4 являются базисными. Выразим базисные переменные через небазисные (свободные) и используем условие :

х3=2+ х12≥0,

х4=4 - х12≥0,

х1 , х2 ≥0;

Выразим целевую функцию через небазисные (свободные) переменные:

f(х) = - х1 +2х2 - 2 - х1 + х2 - 4 + х12 =-6 - х1 +4х2;

Решим полученную задачу линейного программирования

f(х) = =-6 - х1 +4х2 →extr,

2+ х12≥0,

4 - х12≥0,

х1 , х2 ≥0;

Для этого построим соответствующее множество допустимых решений X. Затем найдем градиент: f(x) = (-1;4), проведем линию уровня функции перпендикулярно градиенту, и будем передвигать ее параллельно самой себе до касания с множеством допустимых решений.

Рис.2

Итак, по рисунку 2 определяем решение: максимум достигается в точке С(1,3), а минимум в точке D(4,0). Соответствующие значения целевой функции находим путем подстановки значений оптимума в уравнение для f(x).