-Базисный план х называется невырожденным, если все его базисные компоненты строго
положительны, и вырожденным в противном случае.
1.3.2. Свойства базисных планов. Следующая теорема трактует понятие базисного плана в терминах первой геометрической интерпретации ЗЛП.
Теорема 1.3. Каждый допустимый базисный план является угловой точкой множества допустимых планов D. |
Доказательство.
Ради простоты положим, что базисными векторами являются первые m столбцов матрицы A, т. е. β={al,a2,...,am}. Тогда утверждение теоремы 1.3 может быть переформулировано следующим образом:
Если существует такой n-мерный вектор
чтоx1a1 +х2а2 +...+xkak =b, то х есть угловая точка множества D.
Проведем доказательство от противного, т. е. предположим, что рассматриваемый базисный план х не является угловой точкой множества D. Тогда ее можно представить в виде выпуклойкомбинации некоторых двух различных допустимых планов х1 и х2:
x = λx1+(1-λ)x2, 0<λ<1.
В координатной форме последнее утверждение означает
Поскольку последние (n - k) компоненты вектора х по предположению равны 0, а числа хj1,xj2 ≥ 0 и λ, (1 -λ )>0, то эти же компоненты в векторах x1 и х2 также равны 0. Поэтому, с учетом допустимости планов х1 и х2, можно утверждать, что
Вычитая из (1.15) (1.16), получим
Так как векторы а1,а2,...,аk — линейно независимы, то коэффициенты х11 –х21 =0,..., х1k –х2k =0, из чего следует, что x1 =х2. Это противоречит предположению, что х1 и х2 являются различными угловыми точками множестваD. Следовательно, х не может быть представлен в виде выпуклой комбинации двух точек D и по определению является угловой точкой данного множества. -
Интересно отметить, что справедливо и обратное утверждение, которое приведем без доказательства:
Если х — угловая точка множества D, то она является допустимым базисным планом задачи (D, f).
В завершение параграфа необходимо отметить практическое значение установленной связи между угловыми точками и допустимыми базисными решениями: она позволяет формализовать (и тем самым существенно упростить) процесс перехода от одной угловой точки к другой.
1.4.1. Основные этапы симплекс-метода. Исходя из свойств линейных экстремальных задач, рассмотренных в предыдущих параграфах, можно заключить, что на принципиальном уровне поиск их решений сводится к последовательному перебору угловых точек множества допустимых планов или, что то же самое, перебору соответствующих допустимых базисных планов. Следует подчеркнуть, что такой перебор для реальных многомерных задач возможен только в теоретическом плане и на практике неосуществим (или крайне неэффективен) даже при условии использованиямощной вычислительной техники. Средством решения данной проблемы явились прикладные оптимизационные методы, основанные на последовательном, целенаправленном переборе базисных планов ЗЛП.
Классическим методом решения ЗЛП стал симплекс-метод, получивший также в литературе название метода последовательного улучшения плана, разработанный в 1947г. американским математиком Джорджем Данцигом.
Идея такого перехода от одного базисного плана к другому, при котором происходит «улучшение» значения целевой функции, может быть продемонстрирована для случая m = 2 с помощью рис. 1.4. Если вектор ограничений b принадлежит конусу, натянутому на некоторые два базисных вектора условий {аj1,аj2}, то существует такой базисный план х с базисными компонентами хj1,хj2, чтоb= хj1aj1 + хj2aj2 . Разумеется, таких планов может быть несколько в зависимости от выбора системы базисных векторов. Чтобы различать их по соответствующей величине целевой функцииf(x)=cj1xj1 +сj2хj2, вводятся так называемые расширенные векторы условий и ограничений. В общем случае расширенный столбец условийāj получается соединением коэффициента целевой функции сj и столбца аj:
расширенный вектор ограничений определим как
В дальнейшем для удобства нумерации элементов будем считать, что добавляемый коэффициент целевой функции сj является нулевым элементом j-го расширенного столбца условий, т. е.ā0,j = сj. При изображении расширенных векторов нулевая координата откладывается вдоль вертикальной оси — оси аппликат.
Рассмотрим также вектор
=
Геометрически определение вектора b означает, что он принадлежит конусу, натянутому на расширенные векторы, а вектор служит его проекцией. Нулевая координата вектора b имеет вид:
т. е. равна значению целевой функции для выбранного базисного плана.
Из геометрической иллюстрации следует, что для решения задачи мы должны среди векторов аj выбрать такой набор {аj1,аj2}, чтобы, прямая, проведенная через конец вектора параллельно оси аппликат, пересекала конус, натянутый на систему соответствующих расширенных столбцов { āj1, āj2}, в «наивысшей» точке.
На рис. 1.4 выделен конус, натянутый на систему расширенных столбцов ā2 и ā3, отвечающих текущему допустимому базису. Нетрудно заметить, что данный базис не является оптимальным, например, для базиса {а3, а4} точка пересечения соответствующего конуса и прямой будет находиться выше. Можно, наоборот, указать базис с «худшим» значением целевой функции: {а1 а2}. Наконец, рассматриваемая геометрическая интерпретация КЗЛП иллюстрирует и общую идею критерия, который используется в симплекс-методе для определения оптимальности (или неоптимальности) текущего плана: если существуют векторы-столбцы, лежащие выше плоскости,проходящей через векторы текущего базиса, то он не является оптимальным и может быть «улучшен».
С вычислительной точки зрения критерий оптимальности в симплекс-методе реализуется через нахождение специальных оценок для небазисных векторов-столбцов, относительно текущего базиса.
Для удобства дальнейшего изложения введем некоторые обозначения. Учитывая то, что симплекс-метод представляет собой некоторый итеративный вычислительный процесс, то черезq будем обозначать номер очередной (текущей) итерации. Соответственно, набор базисных столбцов, получаемых на q-й итерации, будет обозначаться как β(q):
Для того чтобы было легче отличить номер итерации от номеров компонентов матриц и векторов, он заключен в круглые скобки. Номера столбцов, входящих в базис, обозначим через N(β(q)), а именно
При этом Nr(β(q)) =jr — номер столбца, занимающего r-ю позицию в базисе. Тогда текущий базисный план х имеет вид:
Обозначим через Δ(ß(q)) матрицу, составленную из столбцов {аj1, аj2,..., аjm}, образующих базис, через Δ(ß(q)) матрицу, образованную из соответствующих расширенных столбцов и дополненную слева столбцом специального вида: