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

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

Мы знаем, что система линейных алгебраических уравнений может:

1) Не иметь решений (бытьнесовместной ).
2) Иметь бесконечно много решений.
3) Иметь единственное решение.

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

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

1) с троки матрицыможно переставлять местами.

2) если в матрице появились (или есть) пропорциональные (как частный случай – одинаковые) строки, то следуетудалить из матрицы все эти строки кроме одной.

3) если в матрице в ходе преобразований появилась нулевая строка, то ее также следует удалить .

4) строку матрицы можноумножить (разделить) на любое число,отличное от нуля.

5) к строке матрицы можноприбавить другую строку, умноженную на число , отличное от нуля.

В методе Гаусса элементарные преобразования не меняют решение системы уравнений.

Метод Гаусса состоит из двух этапов:

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

Для этого выполним следующие действия:

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

2) Переходим к следующему уравнению. Пусть это будет второе уравнение и коэффициент при х 2 равен М. Со всеми «нижестоящими» уравнениями поступаем так, как описано выше. Таким образом, «под» неизвестной х 2 во всех уравнениях будут нули.

3) Переходим к следующему уравнению и так до тех пора, пока не останется одна последняя неизвестная и преобразованный свободный член.

  1. «Обратный ход» метода Гаусса – получение решения системы линейных алгебраических уравнений (ход «снизу-вверх»). Из последнего «нижнего» уравнения получаем одно первое решение – неизвестную х n . Для этого решаем элементарное уравнение А*х n = В. В примере, приведенном выше, х 3 = 4. Подставляем найденное значение в «верхнее» следующее уравнение и решаем его относительно следующей неизвестной. Например, х 2 – 4 = 1, т.е. х 2 = 5. И так до тех пор, пока не найдем все неизвестные.

Пример.

Решим систему линейных уравнений методом Гаусса, как советуют некоторые авторы:

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

Смотрим на левую верхнюю «ступеньку». Там у нас должна быть единица. Проблема состоит в том, что в первом столбце единиц нет вообще, поэтому перестановкой строк ничего не решить. В таких случаях единицу нужно организовать с помощью элементарного преобразования. Обычно это можно сделать несколькими способами. Поступим так:
1 шаг . К первой строке прибавляем вторую строку, умноженную на –1. То есть, мысленно умножили вторую строку на –1 и выполнили сложение первой и второй строки, при этом вторая строка у нас не изменилась.

Теперь слева вверху «минус один», что нас вполне устроит. Кто хочет получить +1, может выполнить дополнительное действие: умножить первую строку на –1 (сменить у неё знак).

2 шаг . Ко второй строке прибавили первую строку, умноженную на 5. К третьей строке прибавили первую строку, умноженную на 3.

3 шаг . Первую строку умножили на –1, в принципе, это для красоты. У третьей строки также сменили знак и переставили её на второе место, таким образом, на второй «ступеньке у нас появилась нужная единица.

4 шаг . К третьей строке прибавили вторую строку, умноженную на 2.

5 шаг . Третью строку разделили на 3.

Признаком, который свидетельствует об ошибке в вычислениях (реже – об опечатке), является «плохая» нижняя строка. То есть, если бы у нас внизу получилось что-нибудь вроде (0 0 11 |23) , и, соответственно, 11x 3 = 23, x 3 = 23/11, то с большой долей вероятности можно утверждать, что допущена ошибка в ходе элементарных преобразований.

Выполняем обратный ход, в оформлении примеров часто не переписывают саму систему, а уравнения «берут прямо из приведенной матрицы». Обратный ход, напоминаю, работает «снизу вверх». В данном примере получился подарок:

x 3 = 1
x 2 = 3
x 1 + x 2 – x 3 = 1, следовательно x 1 + 3 – 1 = 1, x 1 = –1

Ответ :x 1 = –1, x 2 = 3, x 3 = 1.

Решим эту же систему по предложенному алгоритму. Получаем

4 2 –1 1
5 3 –2 2
3 2 –3 0

Разделим второе уравнение на 5, а третье – на 3. Получим:

4 2 –1 1
1 0.6 –0.4 0.4
1 0.66 –1 0

Умножим второе и третье уравнения на 4, получим:

4 2 –1 1
4 2,4 –1.6 1.6
4 2.64 –4 0

Вычтем из второго и третьего уравнений первое уравнение, имеем:

4 2 –1 1
0 0.4 –0.6 0.6
0 0.64 –3 –1

Разделим третье уравнение на 0,64:

4 2 –1 1
0 0.4 –0.6 0.6
0 1 –4.6875 –1.5625

Умножим третье уравнение на 0,4

4 2 –1 1
0 0.4 –0.6 0.6
0 0.4 –1.875 –0.625

Вычтем из третьего уравнения второе, получим «ступенчатую» расширенную матрицу:

4 2 –1 1
0 0.4 –0.6 0.6
0 0 –1.275 –1.225

Таким образом, так как в процессе вычислений накапливалась погрешность, получаем х 3 = 0,96 или приблизительно 1.

х 2 = 3 и х 1 = –1.

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

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

Желаю успехов! До встречи на занятиях! Репетитор Дмитрий Айстраханов .

сайт, при полном или частичном копировании материала ссылка на первоисточник обязательна.


Метод Гаусса прекрасно подходит для решения систем линейных алгебраических уравнений (СЛАУ). Он обладает рядом преимуществ по сравнению с другими методами:

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

Краткий обзор статьи.

Сначала дадим необходимые определения и введем обозначения.

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

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

Навигация по странице.

Основные определения и обозначения.

Рассмотрим систему из p линейных уравнений с n неизвестными (p может быть равно n ):

Где - неизвестные переменные, - числа (действительные или комплексные), - свободные члены.

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

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

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

Если СЛАУ имеет единственное решение, то она называется определенной . Если решений больше одного, то система называется неопределенной .

Говорят, что система записана в координатной форме , если она имеет вид
.

Эта система в матричной форме записи имеет вид , где - основная матрица СЛАУ, - матрица столбец неизвестных переменных, - матрица свободных членов.

Если к матрице А добавить в качестве (n+1)-ого столбца матрицу-столбец свободных членов, то получим так называемую расширенную матрицу системы линейных уравнений. Обычно расширенную матрицу обозначают буквой Т , а столбец свободных членов отделяют вертикальной линией от остальных столбцов, то есть,

Квадратная матрица А называется вырожденной , если ее определитель равен нулю. Если , то матрица А называется невырожденной .

Следует оговорить следующий момент.

Если с системой линейных алгебраических уравнений произвести следующие действия

  • поменять местами два уравнения,
  • умножить обе части какого-либо уравнения на произвольное и отличное от нуля действительное (или комплексное) число k ,
  • к обеим частям какого-либо уравнения прибавить соответствующие части другого уравнения, умноженные на произвольное число k ,

то получится эквивалентная система, которая имеет такие же решения (или также как и исходная не имеет решений).

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

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

Теперь можно переходить к описанию метода Гаусса.

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

Как бы мы поступили в школе, если бы получили задание найти решение системы уравнений .

Некоторые сделали бы так.

Заметим, что прибавив к левой части второго уравнения левую часть первого, а к правой части - правую, можно избавиться от неизвестных переменных x 2 и x 3 и сразу найти x 1 :

Подставляем найденное значение x 1 =1 в первое и третье уравнение системы:

Если умножить обе части третьего уравнения системы на -1 и прибавить их к соответствующим частям первого уравнения, то мы избавимся от неизвестной переменной x 3 и сможем найти x 2 :

Подставляем полученное значение x 2 =2 в третье уравнение и находим оставшуюся неизвестную переменную x 3 :

Другие поступили бы иначе.

Разрешим первое уравнение системы относительно неизвестной переменной x 1 и подставим полученное выражение во второе и третье уравнение системы, чтобы исключить из них эту переменную:

Теперь разрешим второе уравнение системы относительно x 2 и подставим полученный результат в третье уравнение, чтобы исключить из него неизвестную переменную x 2 :

Из третьего уравнения системы видно, что x 3 =3 . Из второго уравнения находим , а из первого уравнения получаем .

Знакомые способы решения, не правда ли?

Самое интересное здесь то, что второй способ решения по сути и есть метод последовательного исключения неизвестных, то есть, метод Гаусса. Когда мы выражали неизвестные переменные (сначала x 1 , на следующем этапе x 2 ) и подставляли их в остальные уравнения системы, мы тем самым исключали их. Исключение мы проводили до того момента, пока в последнем уравнении не осталась одна единственная неизвестная переменная. Процесс последовательного исключения неизвестных называется прямым ходом метода Гаусса . После завершения прямого хода у нас появляется возможность вычислить неизвестную переменную, находящуюся в последнем уравнении. С ее помощью из предпоследнего уравнения находим следующую неизвестную переменную и так далее. Процесс последовательного нахождения неизвестных переменных при движении от последнего уравнения к первому называется обратным ходом метода Гаусса .

Следует заметить, что когда мы выражаем x 1 через x 2 и x 3 в первом уравнении, а затем подставляем полученное выражение во второе и третье уравнения, то к такому же результату приводят следующие действия:

Действительно, такая процедура также позволяет исключить неизвестную переменную x 1 из второго и третьего уравнений системы:

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

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

Надеемся, что суть Вы уловили.

Опишем алгоритм метода Гаусса.

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

Будем считать, что , так как мы всегда можем этого добиться перестановкой местами уравнений системы. Исключим неизвестную переменную x 1 из всех уравнений системы, начиная со второго. Для этого ко второму уравнению системы прибавим первое, умноженное на , к третьему уравнению прибавим первое, умноженное на , и так далее, к n-ому уравнению прибавим первое, умноженное на . Система уравнений после таких преобразований примет вид

где , а .

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

Далее действуем аналогично, но лишь с частью полученной системы, которая отмечена на рисунке

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

где , а . Таким образом, переменная x 2 исключена из всех уравнений, начиная с третьего.

Далее приступаем к исключению неизвестной x 3 , при этом действуем аналогично с отмеченной на рисунке частью системы

Так продолжаем прямой ход метода Гаусса пока система не примет вид

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

Разберем алгоритм на примере.

Пример.

методом Гаусса.

Решение.

Коэффициент a 11 отличен от нуля, так что приступим к прямому ходу метода Гаусса, то есть, к исключению неизвестной переменной x 1 из всех уравнений системы, кроме первого. Для этого к левой и правой частям второго, третьего и четвертого уравнения прибавим левую и правую части первого уравнения, умноженные соответственно на , и :

Неизвестную переменную x 1 исключили, переходим к исключению x 2 . К левым и правым частям третьего и четвертого уравнений системы прибавляем левую и правую части второго уравнения, умноженные соответственно на и :

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

Можно начинать обратный ход метода Гаусса.

Из последнего уравнения имеем ,
из третьего уравнения получаем ,
из второго ,
из первого .

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

Ответ:

А сейчас приведем решение этого же примера методом Гаусса в матричной форме записи.

Пример.

Найдите решение системы уравнений методом Гаусса.

Решение.

Расширенная матрица системы имеет вид . Сверху над каждым столбцом записаны неизвестные переменные, которым соответствуют элементы матрицы.

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

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

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

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

Следует отметить, что эта матрица соответствует системе линейных уравнений

которая была получена ранее после прямого хода.

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

стала диагональной, то есть, приняла вид

где - некоторые числа.

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

Прибавим к элементам третьей, второй и первой строк соответствующие элементы последней строки, умноженные на , на и на соответственно:

Теперь прибавим к элементам второй и первой строк соответствующие элементы третьей строки, умноженные на и на соответственно:

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

Полученная матрица соответствует системе уравнений , откуда находим неизвестные переменные.

Ответ:

ОБРАТИТЕ ВНИМАНИЕ.

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

Пример.

Решите систему из трех уравнений методом Гаусса .

Решение.

Отметим, что в этом примере неизвестные переменные имеют другое обозначение (не x 1 , x 2 , x 3 , а x, y, z ). Перейдем к обыкновенным дробям:

Исключим неизвестную x из второго и третьего уравнений системы:

В полученной системе во втором уравнении отсутствует неизвестная переменная y , а в третьем уравнении y присутствует, поэтому, переставим местами второе и третье уравнения:

На этом прямой ход метода Гаусса закончен (из третьего уравнения не нужно исключать y , так как этой неизвестной переменной уже нет).

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

Из последнего уравнения находим ,
из предпоследнего


из первого уравнения имеем

Ответ:

X = 10, y = 5, z = -20 .

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

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

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

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

Переходим к самому важному этапу.

Итак, допустим, что система линейных алгебраических уравнений после завершения прямого хода метода Гаусса приняла вид и ни одно уравнение не свелось к (в этом случае мы бы сделали вывод о несовместности системы). Возникает логичный вопрос: «Что делать дальше»?

Выпишем неизвестные переменные, которые стоят на первом месте всех уравнений полученной системы:

В нашем примере это x 1 , x 4 и x 5 . В левых частях уравнений системы оставляем только те слагаемые, которые содержат выписанные неизвестные переменные x 1 , x 4 и x 5 , остальные слагаемые переносим в правую часть уравнений с противоположным знаком:

Придадим неизвестным переменным, которые находятся в правых частях уравнений, произвольные значения , где - произвольные числа:

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

Из последнего уравнений системы имеем , из предпоследнего уравнения находим , из первого уравнения получаем

Решением системы уравнений является совокупность значений неизвестных переменных

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

Ответ:

где - произвольные числа.

Для закрепления материала подробно разберем решения еще нескольких примеров.

Пример.

Решите однородную систему линейных алгебраических уравнений методом Гаусса.

Решение.

Исключим неизвестную переменную x из второго и третьего уравнений системы. Для этого к левой и правой части второго уравнения прибавим соответственно левую и правую части первого уравнения, умноженные на , а к левой и правой части третьего уравнения - левую и правую части первого уравнения, умноженные на :

Теперь исключим y из третьего уравнения полученной системы уравнений:

Полученная СЛАУ равносильна системе .

Оставляем в левой части уравнений системы только слагаемые, содержащие неизвестные переменные x и y , а слагаемые с неизвестной переменной z переносим в правую часть:

(СЛАУ), состоящая из уравнений с неизвестными:

Предполагается, что существует единственное решение системы, то есть .

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

Описание метода

Процесс решения системы линейных уравнений

по методу Гаусса состоит из 2х этапов:

1. Предполагаем, что . Тогда первое уравнение системы делим на коэффициент , в результате получаем уравнение . Затем из каждого из оставшихся уравнений вычитается первое, умноженное на соответствующий коэффициент . В результате система преобразуются к виду: 2. В предположении, что , делим второе уравнение на коэффициент и исключаем неизвестное из всех последующих уравнений и т.д. 3. Получаем систему уравнений с треугольной матрицей:
  • Обратный ход Непосредственное определение неизвестных
1. Из го уравнения системы определяем 2. Из го - определяем и т.д.

Анализ метода

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

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

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

Возможны 3 случая:

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

Проиллюстрируем полученные результаты на следующем числовом примере: Дана система

Она имеет решение .

Теперь рассмотрим возмущенную систему:

Решением такой системы будет вектор .

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

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

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

Способы оценки ошибок

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

Составляем контрольный столбец , состоящий из контрольных элементов системы:

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

2) Относительная погрешность известного решения позволяет без существенных дополнительных затрат получить суждение о погрешности решения.

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

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

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

Наряду с исходной системой тем же методом решается система

, где и - числа

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

Улучшение метода исключения Гаусса

Рассмотренные ниже модификации метода Гаусса позволяют уменьшить погрешность результата.

Выбор главного элемента

Основное увеличение ошибки в методе происходит во время прямого хода, когда ведущая -я строка умножается на коэффициенты .Если коэффициенты 1%20" alt=" >1 ">, то ошибки, полученные на предыдущих шагах накапливаются. Чтобы этого избежать, применяется модификация метода Гаусса с выбором главного элемента. На каждом шаге к обычной схеме добавляется выбор максимального элемента по столбцу следующим образом:

Пусть по ходу исключения неизвестных получена система уравнений:

, .

Найдем такое , что и поменяем местами -е и -е уровнения.

Такое преобразование во многих случаях существенно уменьшает чувствительность решения к погрешностям округления при вычислениях.

Итеративное улучшение результата

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

.

Решая эту систему, получаем приближение к и полагаем

.

Если точность данного приближения неудовлетворительна, то повторяем эту операцию.

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

Числовой пример

Рассмотрим для примера матрицу Вандермонда размером 7х7 и 2 различные правые части:

Данные системы были решены двумя способами. Тип данных - float. B итоге получили следующие результаты:

Обычный метод
1 2
1 2 1 2
0.999991 1 0.999996 1
1.00019 1 7.4774e-005 2,33e-008
0.998404 1 0.999375 1
1.00667 1 0.00263727 1,12e-006
0.985328 1 0.994149 1
1.01588 1 0.00637817 3,27e-006
0.993538 1 0.99739 1
0,045479 2,9826e-006 0,01818 8,8362e-006
0,006497 4,2608e-007 0,0045451 2,209e-006
0,040152 4,344e-005 0,083938 2,8654e-006
С выбором ведущего элемента по строке
1 2
1 2 1 2
1 1 1 1
1 1 -3.57628e-005 1,836e-007
1.00001 1 1.00031 1
0.999942 1 -0.00133276 7,16e-006
1.00005 1 1.00302 0,99998
1.00009 1 -0.0033505 1,8e-005
0.99991 1 1.00139 0,99999
0,000298 4,3835e-007 0,009439 5,0683e-005
4,2571e-005 6,2622e-008 0,0023542 1,2671e-005
0,010622 9,8016e-007 0,29402 1,4768e-006

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

Элементарные преобразования системы уравнений - это:

  1. Вычеркивание из системы тривиальных уравнений, т.е. таких, у которых все коэффициенты равны нулю;
  2. Умножение любого уравнения на число, отличное от нуля;
  3. Прибавление к любому i -му уравнению любого j -то уравнения, умноженного на любое число.

Переменная x i называется свободной, если эта переменная не является разрешенной, а вся система уравнений - является разрешенной.

Теорема. Элементарные преобразования переводят систему уравнений в равносильную.

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

Итак, метод Гаусса состоит из следующих шагов:

  1. Рассмотрим первое уравнение. Выберем первый ненулевой коэффициент и разделим все уравнение на него. Получим уравнение, в которое некоторая переменная x i входит с коэффициентом 1;
  2. Вычтем это уравнение из всех остальных, умножая его на такие числа, чтобы коэффициенты при переменной x i в остальных уравнениях обнулились. Получим систему, разрешенную относительно переменной x i , и равносильную исходной;
  3. Если возникают тривиальные уравнения (редко, но бывает; например, 0 = 0), вычеркиваем их из системы. В результате уравнений становится на одно меньше;
  4. Повторяем предыдущие шаги не более n раз, где n - число уравнений в системе. Каждый раз выбираем для «обработки» новую переменную. Если возникают противоречивые уравнения (например, 0 = 8), система несовместна.

В результате через несколько шагов получим либо разрешенную систему (возможно, со свободными переменными), либо несовместную. Разрешенные системы распадаются на два случая:

  1. Число переменных равно числу уравнений. Значит, система определена;
  2. Число переменных больше числа уравнений. Собираем все свободные переменные справа - получаем формулы для разрешенных переменных. Эти формулы так и записываются в ответ.

Вот и все! Система линейных уравнений решена! Это довольно простой алгоритм, и для его освоения вам не обязательно обращаться к репетитору высшей по математике. Рассмотрим пример:

Задача. Решить систему уравнений:

Описание шагов:

  1. Вычитаем первое уравнение из второго и третьего - получим разрешенную переменную x 1 ;
  2. Умножаем второе уравнение на (−1), а третье уравнение делим на (−3) - получим два уравнения, в которых переменная x 2 входит с коэффициентом 1;
  3. Прибавляем второе уравнение к первому, а из третьего - вычитаем. Получим разрешенную переменную x 2 ;
  4. Наконец, вычитаем третье уравнение из первого - получаем разрешенную переменную x 3 ;
  5. Получили разрешенную систему, записываем ответ.

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

Когда может понадобиться общее решение? Если приходится делать меньше шагов, чем k (k - это сколько всего уравнений). Однако причин, по которым процесс заканчивается на некотором шаге l < k , может быть две:

  1. После l -го шага получилась система, которая не содержит уравнения с номером (l + 1). На самом деле это хорошо, т.к. разрешенная система все равно получена - даже на несколько шагов раньше.
  2. После l -го шага получили уравнение, в котором все коэффициенты при переменных равны нулю, а свободный коэффициент отличен от нуля. Это противоречивое уравнение, а, следовательно, система несовместна.

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

Описание шагов:

  1. Вычитаем первое уравнение, умноженное на 4, из второго. А также прибавляем первое уравнение к третьему - получим разрешенную переменную x 1 ;
  2. Вычитаем третье уравнение, умноженное на 2, из второго - получим противоречивое уравнение 0 = −5.

Итак, система несовместна, поскольку обнаружено противоречивое уравнение.

Задача. Исследовать совместность и найти общее решение системы:


Описание шагов:

  1. Вычитаем первое уравнение из второго (предварительно умножив на два) и третьего - получим разрешенную переменную x 1 ;
  2. Вычитаем второе уравнение из третьего. Поскольку все коэффициенты в этих уравнениях совпадают, третье уравнение превратится в тривиальное. Заодно умножим второе уравнение на (−1);
  3. Вычитаем из первого уравнения второе - получим разрешенную переменную x 2 . Вся система уравнений теперь тоже разрешенная;
  4. Поскольку переменные x 3 и x 4 - свободные, переносим их вправо, чтобы выразить разрешенные переменные. Это и есть ответ.

Итак, система совместная и неопределенная, поскольку есть две разрешенных переменных (x 1 и x 2) и две свободных (x 3 и x 4).

Пусть дана система , ∆≠0. (1)
Метод Гаусса – это метод последовательного исключения неизвестных.

Суть метода Гаусса состоит в преобразовании (1) к системе с треугольной матрицей , из которой затем последовательно (обратным ходом) получаются значения всех неизвестных. Рассмотрим одну из вычислительных схем. Эта схема называется схемой единственного деления. Итак, рассмотрим эту схему. Пусть a 11 ≠0 (ведущий элемент) разделим на a 11 первое уравнение. Получим
(2)
Пользуясь уравнением (2), легко исключить неизвестные x 1 из остальных уравнений системы (для этого достаточно из каждого уравнения вычесть уравнение (2) предварительно умноженное на соответствующий коэффициент при x 1), то есть на первом шаге получим
.
Иными словами, на 1 шаге каждый элемент последующих строк, начиная со второй, равен разности между исходным элементом и произведением его «проекции» на первый столбец и первую (преобразованную) строку.
Вслед за этим оставив первое уравнение в покое, над остальными уравнениями системы, полученной на первом шаге, совершим аналогичное преобразование: выберем из их числа уравнение с ведущим элементом и исключим с его помощью из остальных уравнений x 2 (шаг 2).
После n шагов вместо (1) получим равносильную систему
(3)
Таким образом, на первом этапе мы получим треугольную систему (3). Этот этап называется прямым ходом.
На втором этапе (обратный ход) мы находим последовательно из (3) значения x n , x n -1 , …, x 1 .
Обозначим полученное решение за x 0 . Тогда разность ε=b-A·x 0 называется невязкой .
Если ε=0, то найденное решение x 0 является верным.

Вычисления по методу Гаусса выполняются в два этапа:

  1. Первый этап называется прямым ходом метода. На первом этапе исходную систему преобразуют к треугольному виду.
  2. Второй этап называется обратным ходом. На втором этапе решают треугольную систему, эквивалентную исходной.
Коэффициенты а 11 , а 22 , …, называют ведущими элементами.
На каждом шаге предполагалось, что ведущий элемент отличен от нуля. Если это не так, то в качестве ведущего можно использовать любой другой элемент, как бы переставив уравнения системы.

Назначение метода Гаусса

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

Виды метода Гаусса

  1. Классический метод Гаусса;
  2. Модификации метода Гаусса. Одной из модификаций метода Гаусса является схема с выбором главного элемента. Особенностью метода Гаусса с выбором главного элемента является такая перестановка уравнений, чтобы на k -ом шаге ведущим элементом оказывался наибольший по модулю элемент k -го столбца.
  3. Метод Жордано-Гаусса;
Отличие метода Жордано-Гаусса от классического метода Гаусса состоит в применении правила прямоугольника , когда направление поиска решения происходит по главной диагонали (преобразование к единичной матрице). В методе Гаусса направление поиска решения происходит по столбцам (преобразование к системе с треугольной матрицей).
Проиллюстрируем отличие метода Жордано-Гаусса от метода Гаусса на примерах.

Пример решения методом Гаусса
Решим систему:

Для удобства вычислений поменяем строки местами:

Умножим 2-ую строку на (2). Добавим 3-ую строку к 2-ой

Умножим 2-ую строку на (-1). Добавим 2-ую строку к 1-ой

Из 1-ой строки выражаем x 3:
Из 2-ой строки выражаем x 2:
Из 3-ой строки выражаем x 1:

Пример решения методом Жордано-Гаусса
Эту же СЛАУ решим методом Жордано-Гаусса.

Последовательно будем выбирать разрешающий элемент РЭ, который лежит на главной диагонали матрицы.
Разрешающий элемент равен (1).



НЭ = СЭ - (А*В)/РЭ
РЭ - разрешающий элемент (1), А и В - элементы матрицы, образующие прямоугольник с элементами СТЭ и РЭ.
Представим расчет каждого элемента в виде таблицы:

x 1 x 2 x 3 B
1 / 1 = 1 2 / 1 = 2 -2 / 1 = -2 1 / 1 = 1


Разрешающий элемент равен (3).
На месте разрешающего элемента получаем 1, а в самом столбце записываем нули.
Все остальные элементы матрицы, включая элементы столбца B, определяются по правилу прямоугольника.
Для этого выбираем четыре числа, которые расположены в вершинах прямоугольника и всегда включают разрешающий элемент РЭ.
x 1 x 2 x 3 B
0 / 3 = 0 3 / 3 = 1 1 / 3 = 0.33 4 / 3 = 1.33


Разрешающий элемент равен (-4).
На месте разрешающего элемента получаем 1, а в самом столбце записываем нули.
Все остальные элементы матрицы, включая элементы столбца B, определяются по правилу прямоугольника.
Для этого выбираем четыре числа, которые расположены в вершинах прямоугольника и всегда включают разрешающий элемент РЭ.
Представим расчет каждого элемента в виде таблицы:
x 1 x 2 x 3 B
0 / -4 = 0 0 / -4 = 0 -4 / -4 = 1 -4 / -4 = 1


Ответ : x 1 = 1, x 2 = 1, x 3 = 1

Реализация метода Гаусса

Метод Гаусса реализован на многих языках программирования, в частности: Pascal, C++, php, Delphi , а также имеется реализация метода Гаусса в онлайн режиме .

Использование метода Гаусса

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

В теории игр при отыскании максиминной оптимальной стратегии игрока составляется система уравнений, которая решается методом Гаусса.

Применение метода Гаусса при решении дифференциальных уравнений

Для поиска частного решения дифференциального уравнения сначала находят производные соответствующей степени для записанного частного решения (y=f(A,B,C,D)), которые подставляют в исходное уравнение. Далее, чтобы найти переменные A,B,C,D составляется система уравнений, которая решается методом Гаусса.

Применение метода Жордано-Гаусса в линейном программировании

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