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

Областью решения линейного неравенства с двумя переменными

(8)

является полуплоскость. Для того, чтобы определить, какая из двух полуплоскостей соответствует этому неравенству, нужно привести его к виду или . Тогда искомая полуплоскость в первом случае расположена выше прямой a0 + a1x1 + a2x2 = 0, а во втором - ниже нее. Если a2=0, то неравенство (8) имеет вид ; в этом случае получим либо - правую полуплоскость, либо - левую полуплоскость.

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

Область решений G обладает важным свойством выпуклости. Область называется выпуклой, если произвольные две ее точки можно соединить отрезком, целиком принадлежащим данной области. На рис. 2 показаны выпуклая область G1и невыпуклая область G2. В области G1 две ее произвольные точки А1 и В1 можно соединить отрезком, все точки которого принадлежат области G1. В области G2 можно выбрать такие две ее точки А2 и В2, что не все точки отрезка А2В2принадлежат области G2.

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

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

Основываясь на введенных понятиях, рассмотрим геометрический метод решения задачи линейного программирования. Пусть заданы линейная целевая функция f = c0 + c1x1 + c2x2 двух независимых переменных, а также некоторая совместная система линейных неравенств, описывающих область решений G. Требуется среди допустимых решений найти такое, при котором линейная целевая функция f принимает наименьшее значение.

Положим функцию f равной некоторому постоянному значению С : f = c0 + c1x1 + c2x2 = C. Это значение достигается в точках прямой, удовлетворяющих уравнению

. (9)

При параллельном переносе этой прямой в положительном направлении вектора нормали n(c1,c2) линейная функция fбудет возрастать, а при ее переносе в противоположном направлении - убывать.

Предположим, что прямая, записанная в виде (9) , при параллельном переносе в положительном направлении вектора nпервый раз встретится с областью допустимых решений G в некоторой ее вершине, при этом значение целевой функции равно С1, и прямая становится опорной. Тогда значение С1 будет минимальным, поскольку дальнейшее движение прямой в том же направлении приведет к увеличению значения f.

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