Математика / Матрицы, определители

Прямой ход метода Гаусса

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

Опубликовано: Обновлено:

Формула

$$R_i\leftarrow R_i-\frac{a_{ik}}{a_{kk}}R_k$$
Лестница нулей Как прямой ход строит нули под диагональю

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

Прямой ход готовит систему к обратной подстановке.

Обозначения

$R_i$
строка, в которой зануляется элемент, строка
$R_k$
ведущая строка на шаге k, строка
$a_{ik}$
элемент под ведущим элементом, который нужно занулить, число
$a_{kk}$
ведущий элемент шага, число

Условия применения

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

Ограничения

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

Подробное объяснение

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

Формула R_i <- R_i - (a_ik/a_kk)R_k показывает, какой именно множитель нужен. Если в строке i под ведущим элементом стоит a_ik, а сам ведущий элемент равен a_kk, то после вычитания получаем a_ik - (a_ik/a_kk)a_kk = 0. Это и есть алгебраическое объяснение зануления. Важно, что вычитается не один элемент, а вся ведущая строка, умноженная на тот же множитель. Поэтому меняются и остальные коэффициенты строки, и правая часть.

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

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

Как пользоваться формулой

  1. Составьте расширенную матрицу системы.
  2. Выберите первый ненулевой ведущий элемент в верхней рабочей строке.
  3. Занулите все элементы ниже ведущего с помощью операций R_i <- R_i - cR_k.
  4. Перейдите к следующей строке и следующему столбцу.
  5. Повторяйте шаги до ступенчатого вида, затем переходите к обратной подстановке или анализу ранга.

Историческая справка

Исключение неизвестных как метод вычисления имеет длинную историю и встречается в древних табличных приемах решения систем. Имя Гаусса закрепилось за европейской традицией метода благодаря его работам и практическим вычислениям в астрономии, геодезии и обработке наблюдений. Гаусс активно использовал систематическое исключение при решении нормальных уравнений, возникающих в методе наименьших квадратов. В XIX-XX веках этот прием был оформлен в учебный алгоритм, который сегодня называют методом Гаусса. Современная запись через строки расширенной матрицы появилась уже в рамках развитой матричной алгебры, но вычислительная идея прямого исключения старше этой записи.

Историческая линия формулы

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

Пример

Решим систему x + 2y = 5, 3x + 7y = 16. Расширенная матрица равна [[1, 2 | 5], [3, 7 | 16]]. Ведущий элемент первого шага равен 1. Чтобы занулить коэффициент 3 под ним, выполняем R2 <- R2 - 3R1. Получаем вторую строку [3, 7 | 16] - [3, 6 | 15] = [0, 1 | 1]. Матрица стала [[1, 2 | 5], [0, 1 | 1]]. Это ступенчатый вид. Теперь видно, что y = 1. Подставляем в первое уравнение: x + 2 = 5, значит x = 3. Прямой ход сделал систему треугольной: второе уравнение содержит только y, а первое позволяет восстановить x.

Частая ошибка

Самая частая ошибка - делить на нулевой ведущий элемент вместо перестановки строк. Вторая ошибка - использовать формулу R_i <- R_i - (a_ik/a_kk)R_k, но вычислить множитель с обратным отношением a_kk/a_ik. Третья ошибка - занулить элемент в матрице коэффициентов, но забыть изменить правую часть. Еще одна ошибка - после перестановки строк продолжать ссылаться на старые номера строк и тем самым применять преобразования не к тем уравнениям.

Практика

Задачи с решением

Один шаг прямого хода

Условие. Для матрицы [[2, 1 | 3], [8, 5 | 13]] занулите первый элемент второй строки.

Решение. Ведущий элемент a_11 = 2, элемент под ним a_21 = 8. Множитель равен 8/2 = 4. Выполняем R2 <- R2 - 4R1: [8, 5 | 13] - [8, 4 | 12] = [0, 1 | 1].

Ответ. Новая вторая строка [0, 1 | 1]

Нулевой ведущий элемент

Условие. Что сделать на первом шаге для матрицы [[0, 2 | 4], [3, 1 | 5]]?

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

Ответ. Поменять строки местами

Дополнительные источники

  • MIT OpenCourseWare 18.06SC Linear Algebra, elimination with matrices
  • OpenStax Precalculus 2e, 9.6 Solving Systems with Gaussian Elimination
  • Althoen and McLaughlin, Gauss-Jordan Reduction: A Brief History, American Mathematical Monthly, 1987

Связанные формулы

Математика

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

$R_i\leftrightarrow R_j,\quad R_i\leftarrow cR_i\ (c\ne0),\quad R_i\leftarrow R_i+cR_j$

Элементарные преобразования строк - это три допустимые операции, которые заменяют систему на эквивалентную: перестановка строк, умножение строки на ненулевое число и прибавление кратной строки.

Математика

Обратная подстановка в методе Гаусса

$x_i=\frac{b'_i-\sum_{j=i+1}^{n}u_{ij}x_j}{u_{ii}}$

Обратная подстановка находит неизвестные после прямого хода метода Гаусса. Она идет снизу вверх по ступенчатой системе: сначала последняя ведущая переменная, затем предыдущие.

Математика

Ступенчатый вид матрицы

$p_1<p_2<\dots<p_r,\quad a_{ij}=0\ \text{ниже ведущих элементов}$

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