Метод Гаусса: алгоритм нахождения корней системы уравнений

Термины и определения

Любую систему алгебраических линейных уравнений (СЛАУ) можно представить в виде математической матрицы. Она состоит из строк и столбцов. В каждой строке записываются коэффициенты уравнения, то есть члены, стоящие возле неизвестных переменных или являющиеся свободными. Если выполняется условие, что все свободные элементы равны нулю, то система называется однородной, в ином же случае — неоднородной.

Система алгебраических линейных уравнений

Когда система имеет хотя бы одно решение, то есть при подстановке определённого значения любое её уравнение станет тождественным, она называется совместной, в противном случае — несовместной. Полной матрицей называется таблица, в которой указаны все элементы уравнений. Принято простую матрицу обозначать буквой «А», а расширенную «Т».

С системой линейных уравнений, а значит со столбцами и строками, можно выполнить следующие действия:

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

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

Этот способ имеет ряд преимуществ по сравнению с другими. Решая систему, не нужно предварительно её исследовать на совместность.

Суть решения матриц методом Гаусса.

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

Хотя вариант решения получил своё название в честь Фридриха Гаусса, первое упоминание возможности нахождения корней СЛАУ было описано в китайском учебнике «Математика в девяти книгах», в седьмом разделе «Избыток-недостаток». Но Гаусс, основываясь на работах Жордана, смог более чётко изложить принцип вычисления и упорядочить алгоритм.

Принцип метода

Базовая схема решения построена на последовательном исключении неизвестных из каждого уравнения. Эти действия выполняются до тех пор, пока не останется только одна переменная. Если число уравнений (m) совпадает с количеством переменных (n), то есть матрица становится квадратной, тогда, используя алгоритм, можно привести её к состоянию единичной.

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

Пошагово решение СЛАУ можно представить в виде следующих действий:

Пошагово решение СЛАУ

  1. Первую строчку делят на коэффициент, занимающий в ней первую позицию.
  2. Прибавляют первое уравнение к остальным строкам матрицы так, чтобы коэффициенты в первом столбце превращались в ноль. Чтобы обнулить коэффициент i строчки, нужно при добавлении строки помножить на число ai1.
  3. После того как первый столбец станет единичным, переходят к аналогичным действиям со вторым. То есть сначала делят на коэффициент, располагающийся в первой строчке, но уже во втором столбце, а затем обнуляют все строки второго столбца.
  4. Далее, эти же операции повторяют с другими столбцами до тех пор, пока матрица не превратится в единичный массив.
  5. Находят решение получившейся матрицы и методом подстановки определяют все другие неизвестные переменные.

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

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

Использование онлайн-калькулятора

В интернете существуют различные сервисы, дающие возможность решать СЛАУ автоматическим способом. То есть от пользователя этих ресурсов требуется лишь ввести систему уравнений в специальную форму на сайте и нажать кнопку «Рассчитать». Далее, программа всё выполнит самостоятельно.

Использование онлайн-калькулятора

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

Пример решения

Например, пусть дана система, состоящая из четырёх уравнений:

(4p1 + 2p2 + 3p3 — 2p4 = 5).

(p1 + 3p2 + 2p3 + 2p4 = -3).

(2p1 + 2p2 + 4p3 + 3p4 = 5).

(-p1 + 3p2 + 2p3 + 4p4 = 3).

Вначале следует составить расширенную матрицу:

{4 2 3 -2 | 5}

{1 3 2 2 |-3}

{2 2 4 3 | 5}

{-1 3 2 4 | 3}

Пример решения

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

{1 3 2 2 |-3}

{4 2 3 -2 | 5}

{2 2 4 3 | 5}

{-1 3 2 4 | 3}

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

Выполнение действий начинают с первого столбца. От второй строки отнимают первую строку, умноженную на четыре, а от третьей строки первую строку, умноженную на два. Теперь к четвёртой строке прибавляют первую строку, умноженную на один:

{1 3 2 2 | -3}

{0 -10 -5 -14 | 13}

{0 -4 0 -3 | 9}

{0 6 4 7 | 1}

После деления второй строки на -10 получится матрица:

{1 3 2 2 | -3}

{0 1 -0.5 -1.4 | 1.3}

{0 -4 0 -3 | 9}

{0 6 4 7 | 1}

Затем необходимо выполнить следующее:

Как правильно решать

  • от первой строки отнять вторую, умноженную на три;
  • к третьей строке добавить вторую, умноженную на четыре;
  • из четвёртой строки вычесть вторую, умноженную на шесть;
  • третью строчку разделить на два;
  • из первой строчки вычесть третью, умноженную на 0,5, и то же самое повторить для второй;
  • от четвёртой строки отнять третью и четвёртую поделить на -2,7;
  • сумму первой и четвёртой строки умножить на 1,85;
  • из второй вычесть четвёртую строку и каждый элемент умножить на 0,75.

В итоге должна получиться следующая матрица:

{1 0 0 0 | -34/9}

{0 1 0 0 | -1/3}

{0 0 1 0 | 47/9}

{0 0 0 1 | -23/9}

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

Метод Гаусса — Жордана

Такой метод решения системы линейных уравнений упрощает решение в два раза. По сути, способ Гаусса можно использовать не переходя к матрице. То есть работать с уравнениями. Например, даны три равенства:

4s1 + 3s2 — 2s3 = 4,

s 1 + 2s2 + s3 = 8,

3s1 + 2s2 + s3 = 10.

Переписать простое уравнение

Сначала нужно переписать простое уравнение с первым коэффициентом, равняющимся единице: s + 2s2 + s3 = 8. Теперь понадобится исключить s1 из оставшихся выражений. Делается это путём умножения уравнений на -4 и сложением их с переписанным. Тогда во второй строчке уберётся s1. Аналогично можно сделать для третьего уравнения, только умножать его нужно на -3. Далее, таким же образом нужно будет избавиться от второй переменной.

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

s1 + 2s2 + s3 = 8,

s2 + ½*s3 = 7/2,

s3 = 3.

Теперь используется способ последовательной подстановки. Вместо s3 во второе уравнение подставляют число три: s2 = 7/2 — 3/2 = 2. Зная s2 и s3, вычисляют s1.

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

{ 1 2 1 | 8}

{ 0 1 ½ | 7/2}

{ 0 0 1 | 3}

Для этого третью строку умножают на ½ и складывают со второй, а затем находят разность третьей и первой строки. Тут умножение не нужно, так как первый член единичный. В итоге получится:

{1 0 0 | 1}

{0 1 0 | 2}

{0 0 1 | 3}

Где 1, 2, 3 – искомые корни.

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

Практическое применение

Часто способ Гаусса используется для решения неких экономических задач. Например, пусть в начале года 3/8 вклада, который составляет 800 тыс. рублей, вложили в первый банк, 1/8 во второй банк и оставшуюся часть вклада в третий банк. К концу года сумма этих вкладов стала равна 907 тысяч рублей.

Вложение денег в банк

При этом известно, что если бы часть вложения соответствовала схеме 1/8 вклада в первый банк, 4/8 вклада — во второй и оставшаяся часть — в третий банк, то к концу общая сумма была бы равна 894 тысяч рублей. А если бы вклад составлял 4/8, 3/8 и оставшуюся часть, то сумма этих вкладов составила бы 903 тысячи рублей.Нужно найти установленный процент депозита в каждом банке.

Обозначив за p1 – процент, начисляемый в первом банке, p2 – во втором, а p3 – в третьем, а за H общее начисление в каждом банке, будет верным записать:

Н1 = 300 * p1 /100 = 3 * p1;

Н2 = 100 * p2 /100 = p2;

Н3 = 400 * p3 /100 = 4 * p3.

Так как на весь вклад было начислено 907 тысяч, то можно составить систему уравнений:

3p1 + p2 + 4p3 = 894 – 800 = 107,

p1 + 4p2 + 3p3 = 894 – 800 = 94,

4p1 + 3p2 + p3 = 903 – 800 = 103.

.Это уравнение с тремя неизвестными. Используя метод Гаусса, решают матрицу следующим образом:

Применение метода Гаусса,

Сложив вторую и третью строку с умножением на -5, а также прибавив к первой третью строку, умноженную на -3, получают обнуление последнего ряда. Чтобы обнулить оставшиеся строки, вторую строку нужно умножить на 1/11 и прибавить к первой. Если всё сделано правильно, ответом на задачу будут корни: p1 = 15, p2 = 10, p3 = 13, соответствующие установленным процентам.