Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Методы решения задачи линейного программирования
Опорные решения задачи линейного программирования
Пусть дана задача линейного программирования в канонической форме записи
(1)
при условиях
(2)
(3)
Будем обозначать через множество решений системы (2) – (3). Предположим, что , где – ранг матрицы , – количество уравнений в системе (2). Из системы векторов-столбцов матрицы выберем некоторую линейно независимую подсистему из векторов . Она существует, так как . Эта система образует базис в . Обозначим через , . Назовем множеством базисных значений индекса , – базиснойподматрицей матрицы . Координаты вектора будем называть базисными, если , и небазисными в противном случае.
Запишем систему (2) в виде . Разобьем слагаемые левой части на базисные и небазисные, то есть
. (4)
Определим частное решение этой системы следующим образом. Положим в (4) все небазисные переменные равными нулю . Тогда система (4) примет вид
. (5)
Назовем (5) базисной подсистемой системы уравнений (2). Обозначим через вектор, составленный из базисных координат вектора . Тогда систему (2) можно переписать в векторно-матричном виде
. (6)
Так как подматрица является базисной, она
невырождена. Поэтому система (6) имеет единственное решение . Полученное таким образом частное решение системы (2) назовем опорным решением прямой задачи линейного программирования, соответствующим базису . (Иногда опорное решение также называют базисным). Как видим, базису соответствует единственное опорное решение. Очевидно, что число опорных решений конечно.
Для данного базиса определим также и опорное решение двойственной задачи линейного программирования. Напомним, что задача двойственная к канонической имеет вид
(7)
при условиях
. (8)
Запишем систему (8) в виде
. (9)
Напомним, что множество решений системы (8) обозначается через .
Определим вектор двойственных переменных из условия выполнения базисных ограничений в системе (9) как равенств. Получим следующую систему линейных уравнений:
. (10)
Обозначим через вектор, составленный из ба-
зисных координат вектора . Тогда систему (10) можно переписать в векторно-матричном виде
. (11)
Система (11) также имеет единственное решение . Назовем его опорным (базисным) решением двойственной задачи линейного программирования, соответствующим базису . Это опорное решение также определяется однозначно.
Итак, любому базису соответствуют два вектора – два опорных решения и прямой и двойственной задач линейного программирования, соответственно.
Определим далее следующие разновидности базисов и опорных решений. Если все координаты опорного решения неотрицательны, то базис, которому соответствует это опорное решение, называется допустимым. В этом случае вектор называется опорным планом прямой задачи линейного программирования, а соответствующее тому же базису опорное решение называется псевдопланом двойственной задачи. Фактически для допустимости базиса достаточно неотрицательности базисных координат . Заметим, что опорный план является допустимым вектором прямой задачи линейного программирования ().
Если опорное решение удовлетворяет всем ограничениям (9) двойственной задачи, то базис, которому соответствует это опорное решение, называется двойственно допустимым. В этом случае вектор называется опорным планом двойственной задачи линейного программирования, а соответствующее тому же базису опорное реше-
ние называется псевдопланом прямой задачи. Для двойственной допустимости базиса достаточно выполнения только небазисных неравенств . Заметим, что опорный план является допустимым вектором двойственной задачи линейного программирования ().
Разности левых и правых частей неравенств (9) обозначим через , . Тогда двойственную допустимость базиса можно устанавливать, проверяя неотрицательность всех . Заметим, что, как следует непосредственно из определения, все базисные невязки равны нулю (). Поэтому достаточно убедиться в выполнении неравенств для всех .
Познакомимся далее с некоторыми свойствами опорных решений, которые понадобятся нам при отыскании решений задач линейного программирования.
Теорема 1. Пусть и – опорные решения задачи линейного программирования, соответствующие некоторому базису , тогда имеет место равенство .
Доказательство. Из определений опорных решений легко получить равенства
,
откуда и следует справедливость теоремы.
Теорема 2. (Критерий оптимальности опор-ных решений) Если базис одновременно допустим и двойственно допустим, то соответствующие ему опорные решения и являются решениями, соответственно, прямой и двойственной задач линейного программирования.
Доказательство. Справедливость этого утверждения следует из теории двойственности в линейном программировании и теоремы 1.
Теорема 3. Допустимое решение задачи (1) – (3) является опорным планом задачи тогда и только тогда, когда оно является вершиной выпуклого многогранного множества .
Доказательство. Пусть – опорный план задачи (1) – (3). Докажем, что – вершина множества . По определению опорный план – допустимое опорное решение, соответствующее некоторому базису , то есть – решениесистемы линейных уравнений относительно переменных
Легко увидеть, что эта система имеет единственное решение. Значит, несущая плоскость грани, содержащей точку , имеет размерность 0. Следовательно, – вершина множества .
Обратно. Пусть – вершина множества . Докажем, что – опорный план задачи (1) – (3). Так как – вершина, то она является гранью множества , размерность которой равна нулю. Следовательно, у вектора найдется не менее нулевых компонент, множество номеров которых обозначим . Таким образом, – единственное решение системы
(12)
где . Поэтому осталось доказать, что система векторов линейно независима. Предположим противное. Тогда существуют числа не все равные нулю, такие что . Поэтому
Это означает, что система (12) имеет решение, отличное от , что противоречит единственности ее решения. Таким образом, – базис, а вектор – соответствующий ему опорный план задачи (1) – (3). Что и требовалось.
Заметим, что допустимое решение задачи (7), (8) (двойственной задаче (1) – (3)) также является опорным планом тогда и только тогда, когда оно является вершиной допустимого множества .
Дата публикования: 2015-01-10; Прочитано: 1151 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!