ОДР n-мерной задачи линейного программирования.

При анализе систем линейных уравнений с n неизвестными широко используется понятие n-мерных векторов или точек n-мерного пространства.

Введём n-мерное векторное (линейное) пространство Rn. Элементами этого пространства являются возможные наборы из n действительных чисел, взятых в определённом порядке.

ОДР n-мерной задачи линейного программирования. - student2.ru - вектор или точка пространства Rn.

x1,x2,…,xn – координаты вектора или точки.

В Rn определяются операции сложения элементов и умножения элементов на число.

I. X+Y=(x1+y1,x2+y2,…,xn+yn)

II. ОДР n-мерной задачи линейного программирования. - student2.ru

Вводится вектор-нуль

1) θ=(0,0,…,0)

2) вектор, противоположный X (-X): X+(-X)=θ.

Операции I и II обладают следующими свойствами:

1) Коммутативность X+Y=Y+X.

2) Ассоциативность сложения X+(Y+Z)=(X+Y)+Z.

3) Ассоциативность умножения ОДР n-мерной задачи линейного программирования. - student2.ru , с1,c2 – действительные числа.

4) Дистрибутивность

А) векторная ОДР n-мерной задачи линейного программирования. - student2.ru

Б) скалярная ОДР n-мерной задачи линейного программирования. - student2.ru

По аналогии с двух- и трёхмерными векторами в Rn можно ввести понятие скалярного произведения ОДР n-мерной задачи линейного программирования. - student2.ru

Наличие скалярного произведения в Rn позволяет ввести понятие длины вектора и расстояния между элементами Rn. Длиной вектора (его модулем) наз. « ОДР n-мерной задачи линейного программирования. - student2.ru » из скалярного квадрата.

ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru

A(x1,x2,…,xn) – каждый из которых является решением линейного уравнения относительно n переменных, называется гиперплоскостью.

ОДР n-мерной задачи линейного программирования. - student2.ru

A(x1,x2,…,xn) – называется полупространством, расположенным по одну сторону от граничной гиперплоскости.

R3

ОДР n-мерной задачи линейного программирования. - student2.ru ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru - коллинеарные ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru

Выведем уравнение отрезка, расположенного на прямой.

Параметрическое уравнение прямой m - ОДР n-мерной задачи линейного программирования. - student2.ru (*)

Если ОДР n-мерной задачи линейного программирования. - student2.ru , то (*) определяет прямую линию m.

ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru

0<t<1 – внутренние точки отрезка [AB]

ОДР n-мерной задачи линейного программирования. - student2.ru - радиус-вектор точки А из Rn ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru - радиус-вектор точки B из Rn ОДР n-мерной задачи линейного программирования. - student2.ru .

Определение. Отрезком ОДР n-мерной задачи линейного программирования. - student2.ru , соединяющим точки A и B, называется множество точек этого пространства, радиус-векторы которых определяются уравнением (*).

Определение. Множество M называется выпуклым, если вместе с любыми своими двумя точками A и B она содержит и все точки отрезка AB, их соединяющего.

ОДР n-мерной задачи линейного программирования. - student2.ru

Пример:

1. На плоскости

 
  ОДР n-мерной задачи линейного программирования. - student2.ru

2. Невыпуклые множества

 
  ОДР n-мерной задачи линейного программирования. - student2.ru

Теорема 1.

Пусть M1 и M2 – выпуклые множества и их пересечение – непустое множество ОДР n-мерной задачи линейного программирования. - student2.ru , тогда ОДР n-мерной задачи линейного программирования. - student2.ru - выпуклое множество.

Доказательство:

ОДР n-мерной задачи линейного программирования. - student2.ru

Возьмём ОДР n-мерной задачи линейного программирования. - student2.ru

Доказать: ОДР n-мерной задачи линейного программирования. - student2.ru

Т.к. ОДР n-мерной задачи линейного программирования. - student2.ru

Т.к. множества M1 и M2 – выпуклые, то ОДР n-мерной задачи линейного программирования. - student2.ru

Следствие:

Пересечение конечного числа выпуклых множеств – выпуклое множество.

ОДР n-мерной задачи линейного программирования. - student2.ru - выпуклое множество.

M1, M2,..., Mn.

ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru - выпуклое

ОДР n-мерной задачи линейного программирования. - student2.ru

Теорема 2.

Область решений системы линейных уравнений и неравенств есть выпуклое множество.

1) Докажем, что ОР одного уравнения с n неизвестными, которое определяет гиперплоскость в Rn – есть выпуклое множество.

ОДР n-мерной задачи линейного программирования. - student2.ru (1)

Где ОДР n-мерной задачи линейного программирования. - student2.ru - вектор из неизвестных.

ОДР n-мерной задачи линейного программирования. - student2.ru

Пусть ОДР n-мерной задачи линейного программирования. - student2.ru и ОДР n-мерной задачи линейного программирования. - student2.ru - решение (1).

Т.е. т. А и т. В – точки, принадлежащие ОР уравнения (1).

Возьмём любую точку С внутри [AB]. Её координаты определяются из равенства ОДР n-мерной задачи линейного программирования. - student2.ru Проверим, что эта т. С также является решением уравнения (*).

ОДР n-мерной задачи линейного программирования. - student2.ru

Т. С является решением уравнения (1). Вместе с двумя точками А и В ОР уравнения (1) содержит все точки отрезка [AB]. ОР уравнения (1) – выпуклое множество.

Докажем, что ОР одного линейного неравенства с n переменными, т.е. полупространство n-мерного пространства также есть выпуклое множество.

2) ОДР n-мерной задачи линейного программирования. - student2.ru (2)

ОДР n-мерной задачи линейного программирования. - student2.ru - решение (2)

ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru внутри [AB] и проверяем, что эта точка также является решением (2)

ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru

т. С является решением (2) и все точки отрезка [AB] принадлежат полупространству, которое определяется неравенством (2).

Теорема 3.

Область решений системы из линейных уравнений и неравенств есть выпуклое множество. Эта область есть пересечение конечного числа гиперплоскостей и полупространств, и по теореме 2 – есть также выпуклое множество.

Следствие.

ОДР ЗЛП – есть выпуклое множество.

Во всяком выпуклом множестве можно выделить внутренние, граничные и угловые точки.

Т. А называется внутренней точкой множества М, если существует окрестность этой точки, которая принадлежит множеству М.

Т. А – внутренняя точка множества М, если ОДР n-мерной задачи линейного программирования. - student2.ru

А – граничная точка множества М, если ОДР n-мерной задачи линейного программирования. - student2.ru имеются как точки множества М, так и точки, не принадлежащие этому множеству М.

Т. А – угловая точка выпуклого множества М, если она не является внутренней ни для какого отрезка, соединяющего две другие точки множества.

ОДР n-мерной задачи линейного программирования. - student2.ru

Множество, содержащее все свои граничные точки, называется замкнутым.

Множество М, называется ограниченным, если ОДР n-мерной задачи линейного программирования. - student2.ru , что для каждой точки ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru ОДР n-мерной задачи линейного программирования. - student2.ru

Множество может быть замкнутым, но неограниченным и наоборот. Например: гиперплоскость - замкнутое неограниченное множество.

Определение.

Выпуклое множество, являющееся пересечением конечного числа полупространств, называется выпуклым многогранником.

ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru - не является выпуклым множеством, т.к. является пересечением бесконечного числа граней.

- выпуклый многогранник

Т.к. полупространство определяется линейными неравенствами, то можно сказать, что выпуклый многогранник – это множество, которое определяет конечная система линейных равенств. Т.о., ограничение ЗЛП в виде (1) и (2) определяют n-мерный выпуклый многогранник.

(1) ОДР n-мерной задачи линейного программирования. - student2.ru

(2) ОДР n-мерной задачи линейного программирования. - student2.ru

Т.к. все неравенства систем (1) и (2) – нестрогие, то эти неравенства содержат точки, лежащие на граничных гиперплоскостях, т.е. являются замкнутыми.

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

Теорема 1 (о существовании опорного решения).

Если система линейных уравнений (1) имеет хотя бы одно допустимое решение, то среди этих решений есть хотя бы одно опорное.

Доказательство:

Систему линейных уравнений (1) запишем в векторной форме

ОДР n-мерной задачи линейного программирования. - student2.ru

Где А1 – вектор-столбец из коэффициентов при неизвестных ОДР n-мерной задачи линейного программирования. - student2.ru ОДР n-мерной задачи линейного программирования. - student2.ruОДР n-мерной задачи линейного программирования. - student2.ru .

Пусть ранг векторов системы ОДР n-мерной задачи линейного программирования. - student2.ru .

Для определённости будем считать, что первые n векторов этой системы образуют базис. Это означает, что существует общее решение системы (1), где ОДР n-мерной задачи линейного программирования. - student2.ru - базисные, ОДР n-мерной задачи линейного программирования. - student2.ru - свободные; сущ. базисн. реш. ОДР n-мерной задачи линейного программирования. - student2.ru . (2)

Последние n-r координат вектора ОДР n-мерной задачи линейного программирования. - student2.ru равны нулю.

Если первые координаты вектора ОДР n-мерной задачи линейного программирования. - student2.ru неотрицательны, то это базисное решение является ещё и опорным решением системы (1). Докажем, что система (1) имеет опорное решение указанного вида (2).

По условию теоремы 1 существует хотя бы одно допустимое решение системы (1).

ОДР n-мерной задачи линейного программирования. - student2.ru

Возможны следующие два случая:

1) ОДР n-мерной задачи линейного программирования. - student2.ru , ОДР n-мерной задачи линейного программирования. - student2.ru - опорное. Т.к. n-r последних координат X1 равны нулю ОДР n-мерной задачи линейного программирования. - student2.ru X1 – базисное решение. Кроме того, первые r координат неотрицательны ОДР n-мерной задачи линейного программирования. - student2.ru

2) ОДР n-мерной задачи линейного программирования. - student2.ru . В этом случае X1 – допустимое решение, но не базисное, т.к. число последних нулевых координат меньше, чем k-r.

Т.к. X1 – решение, поэтому ОДР n-мерной задачи линейного программирования. - student2.ru (а)

Отметим, что система векторов ОДР n-мерной задачи линейного программирования. - student2.ru линейно зависима, т.к. в этой системе число векторов k>r - ранг системы векторов ОДР n-мерной задачи линейного программирования. - student2.ru , значит, существует нетривиальная линейная комбинация.

ОДР n-мерной задачи линейного программирования. - student2.ru (б)

есть нулевой вектор.

Утверждение: хотя бы одно из этих чисел ОДР n-мерной задачи линейного программирования. - student2.ru

Противное:

ОДР n-мерной задачи линейного программирования. - student2.ru тогда существует неравный нулю коэффициент: среди чисел ОДР n-мерной задачи линейного программирования. - student2.ru ОДР n-мерной задачи линейного программирования. - student2.ru , комбинация – нетривиальная.

Противоречие.

ОДР n-мерной задачи линейного программирования. - student2.ru - образуют базис, и только тривиальная комбинация линейных векторов даёт нуль-вектор.

Из уравнения (а) вычтем уравнение (б), умноженное на λ.

(а)-λ (б)

ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru

k-я координата вектора X3 ОДР n-мерной задачи линейного программирования. - student2.ru

Все остальные координаты вектора X3 «≥0».

В результате решений X3 число нулевых свободных переменных увеличилось хотя бы на единицу. Если это останется меньше, чем (n-r), то процедуру надо повторить до тех пор, пока не придём к вектору, у которого число последних нулевых координат равно (n-r), то есть тем самым найдём опорное решение.

Теорема 2.

Допустимое решение ЗЛП является угловой точкой ОДР тогда и только тогда, когда это решение – опорное.

Пусть дана ЗЛП и пусть системы ограничений (1) и (2) определяют выпуклый многогранник М.

ОДР n-мерной задачи линейного программирования. - student2.ru Пусть ОДР n-мерной задачи линейного программирования. - student2.ru - угловая точка М

все ОДР n-мерной задачи линейного программирования. - student2.ru

1. ОДР n-мерной задачи линейного программирования. - student2.ru тогда из теоремы 1 мы получаем, что это решение является опорным.

2. ОДР n-мерной задачи линейного программирования. - student2.ru ОДР n-мерной задачи линейного программирования. - student2.ru (а)

ОДР n-мерной задачи линейного программирования. - student2.ru - лин. завис.

ОДР n-мерной задачи линейного программирования. - student2.ru (б)

Уравнение (а) ± уравнение (б) ОДР n-мерной задачи линейного программирования. - student2.ru t, t – число, большее нуля.

(с) ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru

Подберём число t так, чтобы все координаты векторов X1 и X2 были неотрицательными.

ОДР n-мерной задачи линейного программирования. - student2.ru

1. с1>0

Из первого неравенства системы получаем, что ОДР n-мерной задачи линейного программирования. - student2.ru .

Из второго неравенства системы получаем, что ОДР n-мерной задачи линейного программирования. - student2.ru .

2. с1<0

ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru

Если ОДР n-мерной задачи линейного программирования. - student2.ru то первые координаты будут неотрицательными.

Решив систему ОДР n-мерной задачи линейного программирования. - student2.ru , (*)

найдём отрезок [-t2,t2], для каждой точки которого выполняется неравенство (*).

Выполним этот процесс для всех ненулевых координат векторов X1 и X2.

Найдём k чисел t1,t2,…,tk.

Среди этих чисел возьмём наим. ОДР n-мерной задачи линейного программирования. - student2.ru тогда на [-ti,ti] все координаты X1 и X2 будут неотрицательными, это означает, что X1 и X2 принадлежат ОДР, т.е. это две точки многогранника М.

ОДР n-мерной задачи линейного программирования. - student2.ru это означает, что точка X – середина отрезка, концами которого являются т. X1 и т. X2, т.е. т. X не является угловой точкой по определению угловой точки.

Получим противоречие, т.к. т. X – угловая по определению.

Необходимость:

Докажем, что опорн. реш. явл. углов. т. многогранника М.

Пусть ОДР n-мерной задачи линейного программирования. - student2.ru - угловая точка М.

Противное:

Х не является угловой точкой, это означает, что существует отрезок в многограннике, для которого Х – внутренняя точка.

Пусть ОДР n-мерной задачи линейного программирования. - student2.ru

Т.к. Х – внутренняя точка отрезка Х1Х2, то ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru

Поскольку у вектора Х последние (n-r) координаты – нулевые, значит ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru т.о. каждое из допустимых решений Х1Х2 содержит нулевые значения для тех же свободных переменных, что и решение Х.

Т.к. значения свободных переменных однозначно определяют решение системы, то Х=Х12, т.е. мы доказали, что т. Х может быть только концом отрезка. Получили противоречие с предположением о том, что Х - внутренняя точка ОДР n-мерной задачи линейного программирования. - student2.ru опорное решение Х есть угловая точка.

Выпуклая линейная комбинация системы векторов.

Определение. Пусть X1,X2,…,Xs – система n-мерных векторов.

ОДР n-мерной задачи линейного программирования. - student2.ru - числа:

1) ОДР n-мерной задачи линейного программирования. - student2.ru

2) ОДР n-мерной задачи линейного программирования. - student2.ru

ОДР n-мерной задачи линейного программирования. - student2.ru - выпуклая линейная комбинация системы векторов Х1,…,Xs.

Примеры:

1. ОДР n-мерной задачи линейного программирования. - student2.ru - выпуклая линейная комбинация.

2. ОДР n-мерной задачи линейного программирования. - student2.ru - не выпуклая линейная комбинация.

3. ОДР n-мерной задачи линейного программирования. - student2.ru - не выпуклая линейная комбинация.

Теорема 3.

Множество точек ограниченного выпуклого n-мерного многогранника совпадает с множеством выпуклых линейных комбинаций его угловых точек.

Без доказательства.

Теорема содержит два утверждения:

Если х12,…,хs – угловые точки многогранника М, то любая точка х из многогранника М.

1. ОДР n-мерной задачи линейного программирования. - student2.ru .

2. Любая точка х, определяемая равенством (1) при условии, что х12,…,хs – угловые точки многоугольника М

ОДР n-мерной задачи линейного программирования. - student2.ru

Например, отрезок – многогранник, порождённый двумя точками (своими концами) и т.д.

Существенно то, что многогранник – ограниченный, для неогран. теорема не выполняется.

Наши рекомендации