Системы линейных уравнений метод жордана гаусса. Метод жордана-гаусса для решения слау

В данной статье мы рассмотрим метод Жордана-Гаусса для решения систем линейных уравнений, отличие метода Гаусса от метода Жордана-Гаусса, алгоритм действий, а также приведем примеры решений СЛАУ.

Yandex.RTB R-A-339285-1

Основные понятия

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

Метод Жордана-Гаусса - один из методов, предназначенный для решения систем линейных алгебраических уравнений.

Этот метод является модификацией метода Гаусса - в отличие от исходного (метода Гаусса) метод Жордана-Гаусса позволяет решить СЛАУ в один этап (без использования прямого и обратного ходов).

Примечание

Матричная запись СЛАУ: вместо обозначения А в методе Жордана-Гаусса для записи используют обозначение Ã - обозначение расширенной матрицы системы.

Пример 1

4 x 1 - 7 x 2 + 8 x 3 = - 23 2 x 1 - 4 x 2 + 5 x 3 = - 13 - 3 x 1 + 11 x 2 + x 3 = 16

Как решить?

Записываем расширенную матрицу системы:

à = 4 - 7 8 | - 23 2 - 4 5 | - 13 - 3 11 1 | 16

Напоминаем, что слева от черты записывается матрица системы А:

A = 4 - 7 8 2 - 4 5 - 3 11 1

Замечание 1

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

В этой статье мы покажем оба способа решения.

Произвольный способ выбора разрешающих элементов

  • Первый этап:

Следует обратиться к 1-му столбцу матрицы Ã - необходимо выбрать ненулевой (разрешающий) элемент.

В 1-ом столбце есть 3 ненулевых элемента: 4, 2, -3. Можно выбрать любой, но, по правилам, выбирается тот, чей модуль ближе всего к единице. В нашем примере таким числом является 2.

Цель: обнулить все элементы, кроме разрешающего, т.е. необходимо обнулить 4 и -3:

4 - 7 8 2 - 4 5 - 3 11 1

Произведем преобразование: необходимо сделать разрешающий элемент равным единице. Для этого делим все элементы 2-ой строки на 2. Такое преобразование имеет обозначение: I I: 2:

4 - 7 8 | - 23 2 - 4 5 | - 13 - 3 11 1 | 16 I I ÷ 2 → 4 - 7 8 | - 23 2 - 4 5 / 2 | - 13 / 2 - 3 11 1 | 16

Теперь обнуляем остальные элементы: 4 и -3:

4 - 7 8 | - 23 2 - 4 5 / 2 | - 13 / 2 - 3 11 1 | 16 I - 4 × I I I I I - (- 3) × I I

Необходимо выполнить преобразования:

I - 4 × I I и I I I - (- 3) × I I = I I I + 3 × I I

Запись I - 4 × I I означает, что от элементов 1-ой строки вычитаются соответствующие элементы 2-ой строки, умноженные на 4.

Запись I I I + 3 × I I означает, что к элементам 3-ей строки прибавляются соответствующие элементы 2-ой строки, умноженные на 3.

I - 4 × I I = 4 - 7 8 - 23 - 4 1 - 2 5 / 2 - 13 / 2 = = 4 - 7 8 - 23 - 4 - 8 10 - 26 = 0 1 - 2 3

Записываются такие изменения следующим образом:

4 - 7 8 | - 23 2 - 4 5 / 2 | - 13 / 2 - 3 11 1 | 16 I - 4 × I I I I I - (- 3) × I I → 0 1 - 2 | 3 1 - 2 5 / 2 | - 13 / 2 0 5 17 / 2 | - 7 / 2

  • Второй этап

Необходимо обнулить 2-ой столбец, следовательно, нужно выбрать разрешающий элемент: 1, -2, 5. Однако 2-ую строку матрицы мы использовали в первом этапе, так что элемент -2 не может быть использован.

Поскольку необходимо выбирать число, чей модуль ближе всего к единице, то выбор очевиден - это 1. Обнуляем остальные элементы 2-го столбца:

0 1 - 2 | 3 1 - 2 5 / 2 | - 13 / 2 0 5 17 / 2 | - 7 / 2 I I - (- 2) × I I I I - 5 × I

0 1 - 2 | 3 1 - 2 5 / 2 | - 13 / 2 0 5 17 / 2 | - 7 / 2 I I + 2 × I I I I - 5 × I → 0 1 - 2 | 3 1 0 - 3 / 2 | - 1 / 2 0 0 37 / 2 | - 37 / 2

  • Третий этап

Теперь требуется обнулить элементы 3-го столбца. Поскольку первая и вторая строки уже использованы, поэтому остается только один вариант: 37 / 2 . Обнуляем с его помощью элементы третьего столбца:

0 1 - 2 | 3 1 0 - 3 / 2 | - 1 / 2 0 0 37 / 2 | - 37 / 2

Выполнив преобразования

I - (- 2) × I I I = I + 2 × I I I и I I - (- 3 2) × I I I = I I + 3 2 × I I

получим следующий результат:

0 1 - 2 | 3 1 0 - 3 / 2 | - 1 / 2 0 0 1 | - 1 I + 2 × I I I I I + 3 / 2 × I I I → 0 1 0 | 1 1 0 0 | - 2 0 0 1 | - 1

Ответ : x 1 = - 2 ; x 2 = 1 ; x 3 = - 1 .

Полное решение:

4 - 7 8 | - 23 2 - 4 5 | - 13 - 3 11 1 | 16 I I ÷ 2 → 4 - 7 8 | - 23 2 - 4 5 / 2 | - 13 / 2 - 3 11 1 | 16 I - 4 × I I I I I - (- 3) × I I →

→ 0 1 - 2 | 3 1 - 2 5 / 2 | - 13 / 2 0 5 17 / 2 | - 7 / 2 I I - (- 2) × I I I I - 5 × I → 0 1 - 2 | 3 1 0 - 3 / 2 | - 1 / 2 0 0 37 / 2 | - 37 / 2 I I I ÷ 37 2 →

→ 0 1 - 2 | 3 1 0 - 3 / 2 | - 1 / 2 0 0 1 | - 1 I + 2 × I I I I I + 3 / 2 × I I I → 0 1 0 | 1 1 0 0 | - 2 0 0 1 | - 1 .

Выбор разрешающих элементов на главной диагонали матрицы системы

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

Принцип выбора разрешающих элементов строится на простом отборе соответствующих элементов: в 1-ом столбце выбирается элемент 1-го столбца, во 2-ом - второй, в 3-ем - третий и т.д.

  • Первый этап

В первом столбце необходимо выбрать элемент первой строки, т.е. 4. Но поскольку в первом столбце есть число 2, чей модуль ближе к единице, чем 4, то можно поменять местами первую и вторую строку:

4 - 7 8 | - 23 2 - 4 5 | - 13 - 3 11 1 | 16 → 2 - 4 5 | - 13 4 - 7 8 | - 23 - 3 11 1 | 16

Теперь разрешающий элемент - 2. Как показано в первом способе, делим первую строку на 2, а затем обнуляем все элементы:

4 - 7 8 | - 23 2 - 4 5 | - 13 - 3 11 1 | 16 I ÷ 2 → 2 - 4 5 / 2 | - 13 / 2 4 - 7 8 | - 23 - 3 11 1 | 16 I I - 4 × I I I I + 3 × I → 1 - 2 5 / 2 | - 13 / 2 0 1 - 2 | 3 0 5 17 / 2 | - 7 / 2

  • Второй этап

На втором этапе требуется обнулить элементы второго столбца. Разрешающий элемент - 1, поэтому никаких изменений производить не требуется:

0 1 - 2 | 3 1 - 2 5 / 2 | - 13 / 2 0 5 17 / 2 | - 7 / 2 I + 2 × I I I I I - 5 × I I → 0 1 - 2 | 3 1 0 - 3 / 2 | - 1 / 2 0 0 37 / 2 | - 37 / 2

  • Третий этап

На третьем этапе необходимо обнулить элементы третьего столбца. Разрешающий элемент - 37/2. Делим все элементы на 37/2 (чтобы сделать равными 1), а затем обнуляем:

0 1 - 2 | 3 1 0 - 3 / 2 | - 1 / 2 0 0 37 / 2 | - 37 / 2 I I I ÷ 37 2 → 1 0 - 3 / 2 | - 1 / 2 0 1 - 2 | 3 0 0 1 | - 1 I + 2 × I I I I I + 3 / 2 × I I I → 1 0 0 | - 2 0 1 0 | 1 0 0 1 | - 1

Ответ: x 1 = - 2 ; x 2 = 1 ; x 3 = - 1 .

4 - 7 8 | - 23 2 - 4 5 | - 13 - 3 11 1 | 16 I ÷ 2 → 2 - 4 5 / 2 | - 13 / 2 4 - 7 8 | - 23 - 3 11 1 | 16 I I - 4 × I I I I + 3 × I → 0 1 - 2 | 3 1 - 2 5 / 2 | - 13 / 2 0 5 17 / 2 | - 7 / 2 I + 2 × I I I I I - 5 × I I →

→ 0 1 - 2 | 3 1 0 - 3 / 2 | - 1 / 2 0 0 37 / 2 | - 37 / 2 I I I ÷ 37 2 → 1 0 - 3 / 2 | - 1 / 2 0 1 - 2 | 3 0 0 1 | - 1 I + 2 × I I I I I + 3 / 2 × I I I → 1 0 0 | - 2 0 1 0 | 1 0 0 1 | - 1

Пример 2

Решить СЛАУ методом Жордана-Гаусса:

3 x 1 + x 2 + 2 x 3 + 5 x 4 = - 6 3 x 1 + x 2 + 2 x 4 = - 10 6 x 1 + 4 x 2 + 11 x 3 + 11 x 4 = - 27 - 3 x 1 - 2 x 2 - 2 x 3 - 10 x 4 = 1

Как решить?

Записать расширенную матрицу данной системы Ã :

3 1 2 5 | - 6 3 1 0 2 | 10 6 4 11 11 | - 27 - 3 - 2 - 2 - 10 | 1

Для решения используем второй способ: выбор разрешающих элементов на главной диагонали системы. На первом этапе выбираем элемент первой строки, на втором - второй строки, на третьем - третьей и т.д.

  • Первый этап

Необходимо выбрать разрешающий элемент первой строки, т.е. 3. Затем обнуляем все элементы столбца, разделяя на 3 все элементы:

3 1 2 5 | - 6 3 1 0 2 | - 10 6 4 11 11 | - 27 - 3 - 2 - 2 - 10 | 1 I ÷ 3 → 1 1 / 3 2 / 3 5 / 3 | - 2 3 1 0 2 | - 10 6 4 11 11 | - 27 - 3 - 2 - 2 - 10 | 1 I I - 3 × I I I I - 6 × I I V + 3 × I →

→ 1 1 / 3 2 / 3 5 / 3 | - 2 0 0 - 2 - 3 | - 4 0 2 7 1 | - 15 0 - 1 0 - 5 | - 5

  • Второй этап

Необходимо обнулить элементы второго столбца. Для этого выделяем разрешающий элемент, но элемент первой строки второго столбца равен нулю, поэтому необходимо менять строки местами.

Поскольку в четвертой строке есть число -1, то меняем местами вторую и четвертую строки:

1 1 / 3 2 / 3 5 / 3 | - 2 0 0 - 2 - 3 | - 4 0 2 7 1 | - 15 0 - 1 0 - 5 | - 5 → 1 1 / 3 2 / 3 5 / 3 | - 2 0 - 1 0 - 5 | - 5 0 2 7 1 | - 15 0 0 - 2 - 3 | - 4

Теперь разрешающий элемент равен -1. Делим элементы второго столбца на -1, а затем обнуляем:

1 1 / 3 2 / 3 5 / 3 | - 2 0 - 1 0 - 5 | - 5 0 2 7 1 | - 15 0 0 - 2 - 3 | - 4 I I ÷ (- 1) → 1 1 / 3 2 / 3 5 / 3 | - 2 0 1 0 5 | 5 0 2 7 1 | - 15 0 0 - 2 - 3 | - 4 I - 1 / 3 × I I I I I - 2 × I →

→ 1 0 2 / 3 0 | - 11 / 3 0 1 0 5 | 5 0 0 7 - 9 | - 25 0 0 - 2 - 3 | - 4

  • Третий этап

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

1 0 2 / 3 0 | - 11 / 3 0 1 0 5 | 5 0 0 7 - 9 | - 25 0 0 - 2 - 3 | - 4 → 1 0 2 / 3 0 | - 11 / 3 0 1 0 5 | 5 0 0 - 2 - 3 | - 4 0 0 7 - 9 | - 25

Теперь делим все элементы третьего столбца на -2 и обнуляем все элементы:

1 0 2 / 3 0 | - 11 / 3 0 1 0 5 | 5 0 0 - 2 - 3 | - 4 0 0 7 - 9 | - 25 I I I ÷ (- 2) → 1 0 2 / 3 0 | - 11 / 3 0 1 0 5 | 5 0 0 1 3 / 2 | 2 0 0 0 - 9 | - 25 I - 2 / 3 × I I I I V - 7 × I I I →

1 0 0 - 1 | - 5 0 1 0 5 | 5 0 0 1 3 / 2 | 2 0 0 0 - 39 / 2 | - 39

  • Четвертый этап

Обнуляем четвертый столбец. Разрешающий элемент - - 39 2:

1 0 0 - 1 | - 5 0 1 0 5 | 5 0 0 1 3 / 2 | 2 0 0 0 - 39 / 2 | - 39 I V ÷ (- 39 2) → 1 0 0 - 1 | - 5 0 1 0 5 | 5 0 0 1 3 / 2 | 2 0 0 0 1 | 2 I + I V I I - 5 × I V I I I - 3 / 2 × I V →

→ 1 0 0 0 | - 3 0 1 0 0 | - 5 0 0 1 0 | - 1 0 0 0 1 | 2 .

Ответ : x 1 = - 3 ; x 2 = - 5 ; x 3 = - 1 ; x 4 = 2

Если вы заметили ошибку в тексте, пожалуйста, выделите её и нажмите Ctrl+Enter

Записывается в виде расширенной матрицы, т.е. в столбец свободных членов помещается в одну матрицу с коэффициентами неизвестных. Аалгоритм заключается в приведении исходной матрицы, характеризующей систему линейных уравнений, к единичной путем эквивалентных преобразований (домножения строки матрицы на константу и сложения с другой строкой матрицы). В качестве константы используется 1/a[i][i] , т.е. число, обратное по отношению к элементу диагонали. Естественно, в ряде случаев возникают проблемы, связанные с делением на ноль, которые решаются перестановкой строк и столбцов:

Весь алгоритм можно представить 10 пунктами:

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

    Если элемент опорной строки, индекс которого равен номеру опорной строки, равен нулю, то меняем всю опорную строку на первую попавшуюся строку снизу, в столбце которого нет нуля.

    Все элементы опорной строки делим на первый слева ненулевой элемент этой строки.

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

    В качестве опорной строки выбираем следующую строку.

    Повторяем действия 2 – 5 пока номер опорной строки не превысит число строк.

    В качестве опорной выбираем последнюю строку.

    Вычитаем из каждой строки выше опорную строку, умноженную на элемент этой строки с индексом равным номеру опорной строки.

    В качестве опорной строки выбираем строку выше.

    Повторяем 8 – 9 пока номер опорной строки не станет меньше номера первой строки.

Пример расчета 1

Пусть имеется система уравнений:

Запишем расширенную матрицу системы:

и выполним элементарные преобразования ее строк.

Для этого умножим первую строку на 1 и вычитаем из второй строки; затем умножим первую строку на 2 и вычтем из третьей строки.

В результате мы исключим переменную x 1 из всех уравнений, кроме первого. Получим:

Теперь вычтем из строки 3 строку 2, умноженную на 3:

Теперь вычитаем из 1 строки сначала 3 строку, а затем 2 строку:

После преобразований получаем систему уравнений:

Из этого следует, что система уравнений имеет следующее решение:

x1 = 1, x2 = 3 , x3 = -1

Пример расчета 2

    В качестве примера решим систему уравнений, представленную в виде матрицы (Таблица 1), методом Гаусса – Жордана.

Делим первую строку на 3 (элемент первой строки, расположенный на главной диагонали), получим:

4/3

1/3

Умножаем первую строку на 1 и вычитаем из второй строки. Умножаем первую строку на 6 и вычитаем из третьей строки. Получим:

4/3

1/3

17/3

17/3

В первом столбце все элементы кроме диагонального равны нулю, займемся вторым столбцом, для этого выберем вторую строку в качестве опорной. Вторая Делим ее на 17/3:

4/3

1/3

3 /17

Умножаем строку 2 на -6 и вычитаем из третьей строки:

4/3

1/3

3 /17

3 3 /17

Теперь третья строка – опорная, делим ее на -33/17:

4/3

1/3

3 /17

17/3

Умножаем опорную строку на 3/17 и вычитаем ее из второй. Умножаем третью строку на 1 и вычитаем ее из первой

4/3

17/3

Получена треугольная матрица, начинается обратный ход алгоритма (во время которого получим единичную матрицу). Вторая строка становится опорной. Умножаем третью строку на 4/3 и вычитаем ее из первой:

10/3

17/3

Последний столбец матрицы – решение системы уравнений.

Метод Гаусса-Жордана предназначен для решения систем линейных алгебраических уравнений (СЛАУ). Он является модификацией метода Гаусса . Если метод Гаусса осуществляется в два этапа (прямой ход и обратный) то метод Гаусса-Жордана позволяет решить систему в один этап. Подробности и непосредственная схема применения метода Гаусса-Жордана описаны в примерах.

Во всех примерах $A$ обозначает матрицу системы, $\widetilde{A}$ - расширенную матрицу системы. О матричной форме записи СЛАУ можно прочесть .

Пример №1

Решить СЛАУ $ \left\{ \begin{aligned} & 4x_1-7x_2+8x_3=-23;\\ & 2x_1-4x_2+5x_3=-13;\\ & -3x_1+11x_2+x_3=16. \end{aligned} \right.$ методом Гаусса-Жордана.

Давайте перейдём от последней полученной нами матрице к системе:

$$ \left\{ \begin{aligned} & 0\cdot x_1+1\cdot x_2+0\cdot x_3=1;\\ & 1\cdot x_1+0\cdot x_2+0\cdot x_3=-2;\\ & 0\cdot x_1+0\cdot x_2+1\cdot x_3=-1. \end{aligned} \right. $$

Упрощая полученную систему, имеем:

$$ \left\{ \begin{aligned} & x_2=1;\\ & x_1=-2;\\ & x_3=-1. \end{aligned} \right. $$

Полное решение без пояснений выглядит так:

Хоть этот способ выбора разрешающих элементов вполне допустим, но предпочтительнее выбирать в качестве разрешающих элементов диагональные элементы матрицы системы. Мы рассмотрим этот способ ниже.

Выбор разрешающих элементов на главной диагонали матрицы системы.

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

Первый шаг

В первом столбце выбираем элемент первой строки, т.е. в качестве разрешающего имеем элемент 4. Понимаю, что выбор числа 2 кажется более предпочтительным, так как это число всё-таки меньше, нежели 4. Для того, чтобы число 2 в первом столбце переместилось на первое место, поменяем местами первую и вторую строки:

$$ \left(\begin{array} {ccc|c} 4 & -7 & 8 & -23\\ 2 & -4& 5 & -13 \\ -3 & 11 & 1 & 16 \end{array} \right)\rightarrow \left(\begin{array} {ccc|c} 2 & -4& 5 & -13\\ 4 & -7 & 8 & -23 \\ -3 & 11 & 1 & 16 \end{array} \right) $$

Итак, разрешающий элемент представлен числом 2. Точно так же, как и ранее, разделим первую строку на 2, а затем обнулим элементы первого столбца:

$$ \left(\begin{array} {ccc|c} 2 & -4& 5 & -13\\ 4 & -7 & 8 & -23 \\ -3 & 11 & 1 & 16 \end{array} \right) \begin{array} {l} I:2 \\\phantom{0} \\ \phantom{0} \end{array} \rightarrow \left(\begin{array} {ccc|c} 1 & -2& 5/2 & -13/2 \\4 & -7 & 8 & -23\\ -3 & 11 & 1 & 16 \end{array} \right) \begin{array} {l} \phantom{0} \\ II-4\cdot I\\ III+3\cdot I \end{array} \rightarrow \left(\begin{array} {ccc|c} 1 & -2& 5/2 & -13/2\\0 & 1 & -2 & 3\\ 0 & 5 & 17/2 & -7/2 \end{array} \right). $$

Второй шаг

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

$$ \left(\begin{array} {ccc|c} 1 & -2& 5/2 & -13/2\\0 & 1 & -2 & 3\\ 0 & 5 & 17/2 & -7/2 \end{array} \right) \begin{array} {l} I+2\cdot II \\ \phantom{0}\\ III-5\cdot II \end{array} \rightarrow \left(\begin{array} {ccc|c} 1 & 0 & -3/2 & -1/2 \\ 0 & 1 & -2 & 3\\ 0 & 0 & 37/2 & -37/2 \end{array} \right). $$

Второй шаг окончен. Переходим к третьему шагу.

Третий шаг

На третьем шаге требуется обнулить элементы третьего столбца. В качестве разрешающего элемента выбираем элемент третьей строки, т.е. 37/2. Разделим элементы третьей строки на 37/2 (чтобы разрешающий элемент стал равен 1), а затем обнулим соответствующие элементы третьего столбца:

$$ \left(\begin{array} {ccc|c} 1 & 0 & -3/2 & -1/2 \\ 0 & 1 & -2 & 3\\ 0 & 0 & 37/2 & -37/2 \end{array} \right) \begin{array} {l} \phantom{0}\\ \phantom{0}\\ III:\frac{37}{2} \end{array} \rightarrow \left(\begin{array} {ccc|c} 1 & 0 & -3/2 & -1/2 \\ 0 & 1 & -2 & 3\\ 0 & 0 & 1 & -1 \end{array} \right) \begin{array} {l} I+2\cdot III\\II+3/2\cdot III\\ \phantom{0} \end{array} \rightarrow \left(\begin{array} {ccc|c} 1 & 0 & 0 & -2 \\ 0 & 1 & 0 & 1\\ 0 & 0 & 1 & -1 \end{array} \right). $$

Ответ получен: $x_1=-2$, $x_2=1$, $x_3=-1$. Полное решение без пояснений выглядит так:

Все остальные примеры на этой странице будут решены именно вторым способом: в качестве разрешающих будем выбирать диагональные элементы матрицы системы.

Ответ : $x_1=-2$, $x_2=1$, $x_3=-1$.

Пример №2

Решить СЛАУ $ \left\{ \begin{aligned} & 3x_1+x_2+2x_3+5x_4=-6;\\ & 3x_1+x_2+2x_4=-10;\\ & 6x_1+4x_2+11x_3+11x_4=-27;\\ & -3x_1-2x_2-2x_3-10x_4=1. \end{aligned} \right.$ методом Гаусса-Жордана.

Запишем расширенную матрицу данной системы : $\widetilde{A}=\left(\begin{array} {cccc|c} 3 & 1 & 2 & 5 & -6\\ 3 & 1& 0 & 2 & -10 \\ 6 & 4 & 11 & 11 & -27 \\ -3 & -2 & -2 & -10 & 1 \end{array} \right)$.

В качестве разрешающих элементов станем выбирать диагональные элементы матрицы системы: на первом шаге возьмём элемент первой строки, на втором шаге элемент второй строки и так далее.

Первый шаг

Нам нужно обнулить соответствующие элементы первого столбца. В качестве разрешающего элемента возьмём элемент первой строки, т.е. 3. Соответственно первую строку придётся разделить на 3, чтобы разрешающий элемент стал равен единице. А затем обнулить все элементы первого столбца, кроме разрешающего:

$$ \left(\begin{array}{cccc|c} 3 & 1 & 2 & 5 & -6\\ 3 & 1 & 0 & 2 & -10\\ 6 & 4 & 11 & 11 & -27\\ -3 & -2 & -2 & -10 & 1\end{array}\right) \begin{array} {l} I:3\\ \phantom{0}\\\phantom{0}\\\phantom{0}\end{array} \rightarrow \left(\begin{array}{cccc|c} 1 & 1/3 & 2/3 & 5/3 & -2\\ 3 & 1 & 0 & 2 & -10\\ 6 & 4 & 11 & 11 & -27\\ -3 & -2 & -2 & -10 & 1\end{array}\right) \begin{array} {l} \phantom{0}\\ II-3\cdot I\\III-6\cdot I\\IV+3\cdot I\end{array} \rightarrow\\ \rightarrow\left(\begin{array}{cccc|c} 1 & 1/3 & 2/3 & 5/3 & -2\\ 0 & 0 & -2 & -3 & -4\\ 0 & 2 & 7 & 1 & -15\\ 0 & -1 & 0 & -5 & -5\end{array}\right). $$

Второй шаг

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

$$ \left(\begin{array}{cccc|c} 1 & 1/3 & 2/3 & 5/3 & -2\\ 0 & 0 & -2 & -3 & -4\\ 0 & 2 & 7 & 1 & -15\\ 0 & -1 & 0 & -5 & -5\end{array}\right)\rightarrow \left(\begin{array}{cccc|c} 1 & 1/3 & 2/3 & 5/3 & -2\\ 0 & -1 & 0 & -5 & -5\\ 0 & 2 & 7 & 1 & -15\\ 0 & 0 & -2 & -3 & -4\end{array}\right) $$

Вот теперь всё в норме: разрешающий элемент равен (-1). Бывает, кстати, что смена мест строк невозможна, но это обговорим в следующем примере №3. А пока что делим вторую строку на (-1), а затем обнуляем элементы второго столбца. Обратите внимание, что во втором столбце элемент, расположенный в четвёртой строке, уже равен нулю, поэтому четвёртую строку трогать не будем.

$$ \left(\begin{array}{cccc|c} 1 & 1/3 & 2/3 & 5/3 & -2\\ 0 & -1 & 0 & -5 & -5\\ 0 & 2 & 7 & 1 & -15\\ 0 & 0 & -2 & -3 & -4\end{array}\right) \begin{array} {l} \phantom{0}\\II:(-1) \\\phantom{0}\\\phantom{0}\end{array} \rightarrow \left(\begin{array}{cccc|c} 1 & 1/3 & 2/3 & 5/3 & -2\\ 0 & 1 & 0 & 5 & 5\\ 0 & 2 & 7 & 1 & -15\\ 0 & 0 & -2 & -3 & -4\end{array}\right) \begin{array} {l} I-1/3\cdot II\\ \phantom{0} \\III-2\cdot II\\\phantom{0}\end{array} \rightarrow\\ \rightarrow\left(\begin{array}{cccc|c} 1 & 0 & 2/3 & 0 & -11/3\\ 0 & 1 & 0 & 5 & 5\\ 0 & 0 & 7 & -9 & -25\\ 0 & 0 & -2 & -3 & -4\end{array}\right). $$

Третий шаг

Приступаем к обработке третьего столбца. В качестве разрешающего элемента мы условились брать диагональные элементы матрицы системы. Для третьего шага это означает выбор элемента, расположенного в третьей строке. Однако если мы просто возьмём элемент 7 в качестве разрешающего, то всю третью строку придётся делить на 7. Мне кажется, что разделить на (-2) попроще. Поэтому поменяем местами третью и четвёртую строки, и тогда разрешающим элементом станет (-2):

$$ \left(\begin{array}{cccc|c} 1 & 0 & 2/3 & 0 & -11/3\\ 0 & 1 & 0 & 5 & 5\\ 0 & 0 & 7 & -9 & -25\\ 0 & 0 & -2 & -3 & -4\end{array}\right) \rightarrow \left(\begin{array}{cccc|c} 1 & 0 & 2/3 & 0 & -11/3\\ 0 & 1 & 0 & 5 & 5\\ 0 & 0 & -2 & -3 & -4\\ 0 & 0 & 7 & -9 & -25\end{array}\right) $$

Разрешающий элемент - (-2). Делим третью строку на (-2) и обнуляем соответствующие элементы третьего столбца:

$$ \left(\begin{array}{cccc|c} 1 & 0 & 2/3 & 0 & -11/3\\ 0 & 1 & 0 & 5 & 5\\ 0 & 0 & -2 & -3 & -4\\ 0 & 0 & 7 & -9 & -25\end{array}\right) \begin{array} {l} \phantom{0}\\ \phantom{0} \\III:(-2)\\\phantom{0}\end{array}\rightarrow \left(\begin{array}{cccc|c} 1 & 0 & 2/3 & 0 & -11/3\\ 0 & 1 & 0 & 5 & 5\\ 0 & 0 & 1 & 3/2 & 2\\ 0 & 0 & 7 & -9 & -25\end{array}\right) \begin{array} {l} I-2/3\cdot III\\ \phantom{0} \\ \phantom{0}\\IV-7\cdot III\end{array}\rightarrow\\ \rightarrow\left(\begin{array}{cccc|c} 1 & 0 & 0 & -1 & -5\\ 0 & 1 & 0 & 5 & 5\\ 0 & 0 & 1 & 3/2 & 2\\ 0 & 0 & 0 & -39/2 & -39\end{array}\right). $$

Четвёртый шаг

Переходим к обнулению четвёртого столбца. Разрешающий элемент расположен в четвёртой строке и равен числу $-\frac{39}{2}$.

$$ \left(\begin{array}{cccc|c} 1 & 0 & 0 & -1 & -5\\ 0 & 1 & 0 & 5 & 5\\ 0 & 0 & 1 & 3/2 & 2\\ 0 & 0 & 0 & -39/2 & -39\end{array}\right) \begin{array} {l} \phantom{0}\\ \phantom{0} \\ \phantom{0}\\IV:\left(-\frac{39}{2}\right) \end{array}\rightarrow \left(\begin{array}{cccc|c} 1 & 0 & 0 & -1 & -5\\ 0 & 1 & 0 & 5 & 5\\ 0 & 0 & 1 & 3/2 & 2\\ 0 & 0 & 0 & 1 & 2\end{array}\right) \begin{array} {l} I+IV\\ II-5\cdot IV \\ III-3/2\cdot IV \\ \phantom{0} \end{array}\rightarrow\\ \rightarrow\left(\begin{array}{cccc|c} 1 & 0 & 0 & 0 & -3\\ 0 & 1 & 0 & 0 & -5\\ 0 & 0 & 1 & 0 & -1\\ 0 & 0 & 0 & 1 & 2\end{array}\right). $$

Решение окончено. Ответ таков: $x_1=-3$, $x_2=-5$, $x_3=-1$, $x_4=2$. Полное решение без пояснений:

Ответ : $x_1=-3$, $x_2=-5$, $x_3=-1$, $x_4=2$.

Пример №3

Решить СЛАУ $\left\{\begin{aligned} & x_1-2x_2+3x_3+4x_5=-5;\\ & 2x_1+x_2+5x_3+2x_4+9x_5=-3;\\ & 3x_1+4x_2+7x_3+4x_4+14x_5=-1;\\ & 2x_1-4x_2+6x_3+11x_5=2;\\ & -2x_1+14x_2-8x_3+4x_4-7x_5=20;\\ & -4x_1-7x_2-9x_3-6x_4-21x_5=-9. \end{aligned}\right.$ методом Гаусса-Жордана. Если система является неопределённой, указать базисное решение.

Подобные примеры разбираются в теме "Общее и базисное решения СЛАУ" . Во второй части упомянутой темы данный пример решён с помощью метод Гаусса . Мы же решим его с помощью метода Гаусса-Жордана. Пошагово разбивать решение не станем, так как это уже было сделано в предыдущих примерах.

$$ \left(\begin{array}{ccccc|c} 1 & -2 & 3 & 0 & 4 & -5\\ 2 & 1 & 5 & 2 & 9 & -3\\ 3 & 4 & 7 & 4 & 14 & -1\\ 2 & -4 & 6 & 0 & 11 & 2\\ -2 & 14 & -8 & 4 & -7 & 20\\ -4 & -7 & -9 & -6 & -21 & -9 \end{array}\right) \begin{array} {l} \phantom{0} \\ II-2\cdot I\\ III-3\cdot I\\ IV-2\cdot I\\ V+2\cdot I\\VI+4\cdot I \end{array} \rightarrow \left(\begin{array}{ccccc|c} 1 & -2 & 3 & 0 & 4 & -5\\ 0 & 5 & -1 & 2 & 1 & 7\\ 0 & 10 & -2 & 4 & 2 & 14\\ 0 & 0 & 0 & 0 & 3 & 12\\ 0 & 10 & -2 & 4 & 1 & 10\\ 0 & -15 & 3 & -6 & -5 & -29 \end{array}\right) \begin{array} {l} \phantom{0} \\ II:5 \\ \phantom{0}\\ \phantom{0}\\ \phantom{0} \\ \phantom{0}\end{array} \rightarrow \\ \left(\begin{array}{ccccc|c} 1 & -2 & 3 & 0 & 4 & -5\\ 0 & 1 & -1/5 & 2/5 & 1/5 & 7/5\\ 0 & 10 & -2 & 4 & 2 & 14\\ 0 & 0 & 0 & 0 & 3 & 12\\ 0 & 10 & -2 & 4 & 1 & 10\\ 0 & -15 & 3 & -6 & -5 & -29 \end{array}\right) \begin{array} {l} I+2\cdot II \\ \phantom{0}\\ III-10\cdot II\\ IV:3\\ V-10\cdot II\\VI+15\cdot II \end{array} \rightarrow \left(\begin{array}{ccccc|c} 1 & 0 & 13/5 & 4/5 & 22/5 & -11/5\\ 0 & 1 & -1/5 & 2/5 & 1/5 & 7/5\\ 0 & 0 & 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 & 1 & 4\\ 0 & 0 & 0 & 0 & -1 & -4\\ 0 & 0 & 0 & 0 & -2 & -8 \end{array}\right). $$

Полагаю, что одно из сделанных преобразований всё-таки требует пояснения: $IV:3$. Все элементы четвёртой строки нацело делились на три, поэтому сугубо из соображений упрощения мы разделили все элементы этой строки на три. Третья строка в преобразованной матрице стала нулевой. Вычеркнем нулевую строку:

$$ \left(\begin{array}{ccccc|c} 1 & 0 & 13/5 & 4/5 & 22/5 & -11/5\\ 0 & 1 & -1/5 & 2/5 & 1/5 & 7/5\\ 0 & 0 & 0 & 0 & 1 & 4\\ 0 & 0 & 0 & 0 & -1 & -4\\ 0 & 0 & 0 & 0 & -2 & -8 \end{array}\right) $$

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

В этой ситуации проблема решается крайне незамысловато. Мы не можем обработать третий столбец? Хорошо, перейдём к четвёртому. Может, в четвёртом столбце элемент третьей строки будет не равен нулю. Однако четвёртый столбец "болеет" той же проблемой, что и третий. Элемент третьей строки в четвёртом столбце равен нулю. И смена мест строк опять-таки ничего не даст. Четвёртый столбец тоже не можем обработать? Ладно, перейдём к пятому. А вот в пятом столбце элемент третьей строки очень даже не равен нулю. Он равен единице, что довольно-таки хорошо. Итак, разрешающий элемент в пятом столбце равен 1. Разрешающий элемент выбран, поэтому осуществим дальшейшие преобразования метода Гаусса-Жордана:

$$ \left(\begin{array}{ccccc|c} 1 & 0 & 13/5 & 4/5 & 22/5 & -11/5\\ 0 & 1 & -1/5 & 2/5 & 1/5 & 7/5\\ 0 & 0 & 0 & 0 & 1 & 4\\ 0 & 0 & 0 & 0 & -1 & -4\\ 0 & 0 & 0 & 0 & -2 & -8 \end{array}\right) \begin{array} {l} I-22/5\cdot III \\ II-1/5\cdot III \\ \phantom{0}\\ IV+III\\ V+2\cdot III \end{array} \rightarrow \left(\begin{array}{ccccc|c} 1 & 0 & 13/5 & 4/5 & 0 & -99/5\\ 0 & 1 & -1/5 & 2/5 & 0 & 3/5\\ 0 & 0 & 0 & 0 & 1 & 4\\ 0 & 0 & 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 & 0 & 0 \end{array}\right) \rightarrow \\ \rightarrow\left|\text{Удаляем нулевые строки}\right|\rightarrow \left(\begin{array}{ccccc|c} 1 & 0 & 13/5 & 4/5 & 0 & -99/5\\ 0 & 1 & -1/5 & 2/5 & 0 & 3/5\\ 0 & 0 & 0 & 0 & 1 & 4 \end{array}\right)$$

Мы привели матрицу системы и расширенную матрицу системы к ступенчатому виду. Ранги обеих матриц равны $r=3$, т.е. надо выбрать 3 базисных переменных. Количество неизвестных $n=5$, поэтому нужно выбрать $n-r=2$ свободных переменных. Так как $r < n$, то согласно следствию из теоремы Кронекера-Капелли данная система является неопределённой (т.е. имеет бесконечное количество решений). Для нахождения решений системы составим "ступеньки":

На "ступеньках" стоят элементы из столбцов №1, №2, №5. Следовательно, базисными будут переменные $x_1$, $x_2$, $x_5$. Свободными переменными, соответственно, будут $x_3$, $x_4$. Столбцы №3 и №4, соответствующие свободным переменным, перенесём за черту, при этом, конечно, не забыв сменить им знаки.

$$ \left(\begin{array}{ccccc|c} 1 & 0 & 13/5 & 4/5 & 0 & -99/5\\ 0 & 1 & -1/5 & 2/5 & 0 & 3/5\\ 0 & 0 & 0 & 0 & 1 & 4 \end{array}\right)\rightarrow \left(\begin{array}{ccc|ccc} 1 & 0 & 0 & -99/5 & -13/5 & -4/5\\ 0 & 1 & 0 & 3/5 & 1/5 & -2/5\\ 0 & 0 & 1 & 4 & 0 & 0\end{array}\right). $$

Из последней матрицы получим общее решение: $\left\{\begin{aligned} & x_1=-\frac{99}{5}-\frac{13}{5}x_3-\frac{4}{5}x_4;\\ & x_2=\frac{3}{5}+\frac{1}{5}x_3-\frac{2}{5}x_4;\\ & x_3 \in R;\\ & x_4\in R;\\ & x_5=4. \end{aligned}\right.$. Базисное решение найдём, приняв свободные переменные равными нулю, т.е. $x_3=0$, $x_4=0$:

$$ \left\{\begin{aligned} & x_1=-\frac{99}{5};\\ & x_2=\frac{3}{5};\\ & x_3=0;\\ & x_4=0;\\ & x_5=4. \end{aligned}\right. $$

Задача решена, осталось лишь записать ответ.

Ответ : Общее решение: $\left\{\begin{aligned} & x_1=-\frac{99}{5}-\frac{13}{5}x_3-\frac{4}{5}x_4;\\ & x_2=\frac{3}{5}+\frac{1}{5}x_3-\frac{2}{5}x_4;\\ & x_3 \in R;\\ & x_4\in R;\\ & x_5=4. \end{aligned}\right.$, базисное решение: $\left\{\begin{aligned} & x_1=-\frac{99}{5};\\ & x_2=\frac{3}{5};\\ & x_3=0;\\ & x_4=0;\\ & x_5=4. \end{aligned}\right.$.

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

Размер матрицы: 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 X 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101

О методе

При решении системы линейных уравнений онлайн методом Гаусса выполняются следующие шаги.

  1. Записываем расширенную матрицу.
  2. Фактически решение разделяют на прямой и обратный ход метода Гаусса. Прямым ходом метода Гаусса называется приведение матрицы к ступенчатому виду. Обратным ходом метода Гаусса называется приведение матрицы к специальному ступенчатому виду. Но на практике удобнее сразу занулять то, что находится и сверху и снизу рассматриваемого элемента. Наш калькулятор использует именно этот подход.
  3. Важно отметить, что при решении методом Гаусса, наличие в матрице хотя бы одной нулевой строки с НЕнулевой правой частью (столбец свободных членов) говорит о несовместности системы. Решение линейной системы в таком случае не существует.

Чтобы лучше всего понять принцип работы алгоритма Гаусса онлайн введите любой пример, выберите "очень подробное решение" и посмотрите его решение онлайн.

Как известно, метод Жордана-Гаусса, он же метод последовательного исключения неизвестных, является модификацией метода Гаусса решения систем линейных алгебраических уравнений (СЛАУ).

Метод базируется на элементарных преобразованиях (переводящих систему в эквивалентную), к которым относятся:

  • прибавление к обеим частям уравнения системы другого уравнения той же системы, умноженного на число, отличное от нуля;
  • перестановка местами уравнений в системе;
  • удаление из системы уравнений вида 0 = 0.

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

Шаг метода состоит в следующем:

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

Алгоритмизировать это можно так:

Для СЛАУ в матричном виде A*x=b (матрица A размерности m*n , совсем необязательно квадратная) составляется следующая таблица:

В таблице выбран разрешающий элемент a r,s ≠0 , тогда r - разрешающая строка, s - разрешающий столбец.

Переход к следующей таблице выполняется по правилам:

1. вычисляются элементы разрешающей строки: a" r,j =a r,j /a r,s - то есть, r-строка таблицы делится на разрешающий элемент;

2. все элементы разрешающего столбца, кроме a r,s , равного единице, становятся равны нулю;

3. элементы вне разрешающих строки и столбца вычисляются по формуле, изображённой ниже:


Легко не запутаться, если увидеть, что числитель этой формулы похож на вычисление определителя матрицы 2 на 2.

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

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

1. В процессе исключений левая часть уравнения системы обращается в 0, а правая b≠0 , тогда система не имеет решения.

2. Получается тождество 0 = 0 - уравнение является линейной комбинацией остальных и строка нулей может быть вычеркнута из системы.

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

Запрограммируем метод в Excel одной формулой, изменять которую должно быть не слишком трудоёмко. Например, для решения СЛАУ


заполним коэффициентами системы ячейки листа от A1 до D4 включительно, выберем разрешающий элемент a 1,1 =1 , а первый шаг метода сделаем в ячейке A6 , куда загоним "универсальную" формулу для преобразования Жордана-Гаусса:

ЕСЛИ(СТРОКА($A$1)=СТРОКА(A1);A1/$A$1;
ЕСЛИ(СТОЛБЕЦ($A$1)=СТОЛБЕЦ(A1);0;(A1*$A$1-
ДВССЫЛ(АДРЕС(СТРОКА(A1);СТОЛБЕЦ($A$1)))*
ДВССЫЛ(АДРЕС(СТРОКА($A$1);СТОЛБЕЦ(A1))))/$A$1))


На следующем шаге разрешающим элементом может быть, например, a 2,2 =1 (ячейка B7). Нам останется скопировать формулу из A6 в A11 (по пустой строке оставляем, чтоб визуально разделить шаги метода), войти в режим редактирования формулы (двойной щелчок по ячейке или выбрать её и нажать клавишу F2) и поправить (аккуратно перетащить мышкой за границу) все закреплённые ссылки с ячейки A1 на B7 .

Конечно, можно заменить везде в формуле закреплённую ссылку $A$1 на конструкцию вида ДВССЫЛ(ЯЧЕЙКА) , образующую динамический адрес ссылки. Скажем, ДВССЫЛ(F8) , а в ячейке F8 будет автоматически формироваться адрес ячейки разрешающего элемента по заданным пользователем номеру строки и столбца. Тогда для этих номеров строки и столбца придётся предусмотреть отдельные ячейки, например, так:


Увы, всё это ничего не даст - вместо $A$1 мы просто вынуждены будем закрепить в формуле ДВССЫЛ($F$8) и всё равно потом перетаскивать столько же ссылок при копировании формулы. Кроме того, "вручную" введённые номера строки и столбца придётся ещё и проверять на допустимость (хотя бы как на рисунке), так что, не будем умножать сущностей.

Посмотреть метод в работе можно на двух первых листах приложенного файла Excel (2 разных примера).

На преобразовании Жордана-Гаусса основан и такой универсальный метод решения линейных задач оптимизации, как симплекс-метод . Описания его обычно страшны, длинны и перегружены теоремами. Попробуем сделать простое описание и разработать пригодный для расчёта в Excel алгоритм. На самом деле, симплекс-метод уже встроен в стандартную надстройку Пакет анализа, и программировать его "вручную" не нужно, так что наш код имеет, скорее, учебную ценность.

Сначала минимум теории.

Если вектор-столбцы СЛАУ линейно независимы, соответствующие им переменные являются базисными , а остальные – свободными . Например, в СЛАУ


переменные x 2 и x 4 - базисные, а x 1 и x 3 - свободные. Базисные переменные между собой независимы, а свободные можно сделать, например, нулями и получить { x 2 =2, x 4 =1 } – базисное решение системы.

Выбирая различные разрешающие элементы, можно получить решения СЛАУ с различными базисами. Любое неотрицательное базисное решение СЛАУ называется опорным .

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

Алгоритм симплекс-метода состоит в следующем:

1. Задача ЛП преобразуется к каноническому виду:


Это всегда можно сделать следующим образом: к задаче, записанной в стандартной постановке


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

2*x 1 +3*x 2 ≤20
3*x 1 +x 2 ≤15
4*x 1 ≤16
3*x 2 ≤12
x 1 ,x 2 ≥0

примет вид

2*x 1 +3*x 2 +x 3 =20
3*x 1 +x 2 +x 4 =15
4*x 1 +x 5 =16
3*x 2 +x 6 =12
x 1 ,x 2 ,...,x 6 ≥0

То есть, "экономический" смысл балансовых переменных очень прост – это "остатки" неиспользованных ресурсов каждого вида.

Если в исходной задаче искался не минимум, а максимум, целевая функция Z заменятся на Z 1 = -Z . Решения задач совпадают, при этом min Z = - max Z 1 . Например, цель

Z(x 1 ,x 2)=2*x 1 +5*x 2 (max)

переписывается в виде

Z 1 (x 1 ,x 2)=-2*x 1 -5*x 2 (min)

Если в исходной задаче были уравнения-неравенства со знаками " ≥ " вместо " ≤ ", обе части каждого такого неравенства умножаются на -1 , а знак неравенства меняется на противоположный, например,

3*x 1 +x 2 +x 4 ≥15

превращается в

3*x 1 -x 2 -x 4 ≤15

Канонический вид модели получен, для него выписывается симплекс-таблица :


В левом столбце записываются базисные переменные (БП), если они ещё не выделены – пусто.

2. С помощью шагов Жордана–Гаусса ищется первоначальный опорный план, т.е. СЛАУ приводится к базисному виду с неотрицательными свободными членами b i >0 . При этом целевая функция Z должна быть выражена только через свободные неизвестные (нулевые коэффициенты в Z-строке стоят только под переменными x i , которые есть в базисе). При выборе разрешающего элемента a r,s в строку r столбца БП выписываем переменную x s , если там уже была переменная – вычеркиваем её (выводим из базиса).

3. Выписываем под столбцами x i опорный план X * : под свободными переменными - нули, под базисными – соответствующие базисной переменной коэффициенты из столбца b .

Ниже выписываем вектор R по правилу: под базисными переменными – нули, под свободными R i =Z i .

Если все R i ≥0 , найдено оптимальное решение X * и значение цели Z min = -q , иначе нужен новый план, а у вас он есть, товарищ Жюков? (п. 4).

4. Для выбора разрешающего столбца s выбираем максимальную по модулю отрицательную компоненту вектора R , разрешающий столбец s выбран. Затем анализируем коэффициенты s-го столбца матрицы системы ограничений. Если все a i,s ≤0 , решения нет и Z min стремится к минус бесконечности, иначе переходим к п.5.

5. Для выбора разрешающей строки r составляем неотрицательные отношения b i /A i,s ≥0 , i=1,2,...,m , и выбираем среди них наименьшее. Если минимум достигается для нескольких строк, за разрешающую можно принять любую из них, при этом, в новом опорном плане значения некоторых базисных переменных станут равными 0, т.е., получаем вырожденный опорный план.

6. Выполняем преобразование Жордана-Гаусса с разрешающим элементом a r,s и переходим к п.3

Геометрически симплекс-методу соответствует кратчайший обход вершин n-мерного выпуклого многогранника, образующего область допустимых решений задачи:


Здесь мы перешли от опорного плана C , представляющего собой одну из вершин многомерного многоугольника, к оптимальному плану E=X * .

Запрограммировать это всё в Excel нелегко, но можно. В прилагаемом документе приведены 3 примера, реализующие решение задач симплекс-методом. Правда, при выполнени шага менять уже придётся 3 формулы, на листе первого примера на симплекс-метод они выделены жёлтым цветом: расчёт отношений для выбора разрешающей строки в ячейке I2 , заполнение столбца БП в ячейке A12 , шаг преобразования Жордана-Гаусса в ячейке B12 . Как и в примере на преобразование Жордана-Гаусса, изменение формул связано только с необходимостью сослаться на новую строку, содержащую адрес ячейки с разрешающим элементом (для первого шага - ячейка C9).