Метод исключения гаусса.

В данном случае помимо соблюдения требования a kk 0 при реализации формул (6) накладываются дополнительные требования, чтобы ведущий (главный) элемент в текущем столбце в процессе преобразований исходной матрицы имел максимальное по модулю значение. Это также достигается перестановкой строк матрицы.

Пример . В качестве иллюстрации преимущества модифицированного метода Гаусса, рассмотрим систему третьего порядка:

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

Исключаем х 1 из второго и третьего уравнений. Для этого первое уравнение умножаем на 0,3 и складываем со вторым, а затем умножаем первое уравнение на (–0,5) и складываем с третьим. В результате получаем

(б )

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

Умножая второе уравнение на 25, и складывая с третьим, получим

(в )

Обратный ход метода Гаусса

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

Подставляя полученное решение в исходную систему, убеждаемся в его истинности.

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

(г )

Прямой ход метода для системы (г ) повторим по аналогичной технологии с исходной системой (а ).

(д )

После исключения х 2 третье уравнение примет вид (остальные – без изменения)

15005 х 3 = 15004. (е )

Выполняя обратный ход, получим

Очевидно, что полученные решения и [–0,35; –1,4; 0,99993] различны. Причиной этого является малая величина ведущего элемента во втором уравнении преобразования в (д ). Чтобы это исключить, переставим в (д ) вторую и третью строки


(ж )

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

6,002 х 3 = 6,002. (з )

В данном случае, выполняя обратный ход

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

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

Рассмотрим блок-схему модифицированного метода Гаусса (рис. 2.1).

Рис. 2.1. Блок-схема модифицированного метода Гаусса

Проведем анализ предложенной схемы на примере системы n =3 (=0,001)

(8)

;. (*)

Блок 1. Ввод исходных данных:n – порядок системы,A – матрица коэффициентов при неизвестных,b – вектор свободных членов.

Блок 2.I-й цикл прямого хода (дляk , изменяющегося от 1 до предпоследнего значения, т.е. доn –1) обеспечивает исключение из главной диагонали матрицыА элементаa kk =0 благодаря поиску максимального элементаa kk в текущем столбце, осуществляемому в блоках 36 с помощью циклаII.

Затем реализуются расчеты по формулам (6) прямого хода Гаусса в блоках циклов IVиV.

Проведем поблочный анализ в среде рассмотренных циклов IVна примере (8).

Блок 3p =k = 1

Вход в цикл II

Блок 4m =k +1 = 2 доn = 3

Блок 5a 11 = 2 <a 21 = 4 из (*)

Блок 6p = 2

Блок 4m = 2+1 = 3

Блок 5a 21 = 4 <a 31 = 6 из (*)

Блок 6p = 3

Выход из цикла IIи вход в циклIII, блоки 710 выполняют перестановку строк матрицыА поэлементно

Блок 7j = 1 (j от 1 до 3)

Блок 8 r = a 11 = 2 из (*)

Блок 9 a 11 = a 31 = 6

Блок 10 a 31 = r

Блок 7 j = 2

Блок 8 r = a 12 = 1

Блок 9 a 12 = a 32 = 5

Блок 10 a 32 = r = 1

Блок 7j = 3 и по аналогииr =a 13 ;a 13 =a 33 ;a 33 =r = −1.

Выход из цикла IIIи вход вБлок 11 и далее 1213 выполняют аналогичную перестановку значений свободных членов

r =b 1 = 1;b 1 = b 3 = 14;b 3 =r= 1.

Вход в цикл IVс измененной системой

;; (**)

для пересчета b 2 вектора

m =k +1 = 1+1 = 2 доn = 3

c = a mk / a kk = a 21 / a 11 = 4/6 из (**)

b 2 =b 2 –c b 1 = 6 – 4/614 = −20/6 из (**)

Вход во вложенный цикл Vдля пересчета второй строки

i = 1 (i от 1 до 3); a 21 = a 21 – с a 11 = 4 – 4/6  6 = 0;

i = 2; a 22 = a 22 – с a 12 = 6 – 4/6  5 = 16/6;

i = 3; a 23 = a 23 – с a 13 = 2 – 4/6  8 = −20/6.

Выход из цикла Vи вход в циклIV

m = 3;c =a 31 /a 11 = 2/6.

Вход в Блок 16

b 3 =b 3 –c b 1 = 1 – 2/614 = −22/6.

Выход из цикла IVи вход в циклVи вход вБлок 17

i = 1 (i от 1 до 3); a 31 = a 31 – с a 11 = 2 – 2/6  6 = 0;

i = 2; a 32 = a 32 – с a 12 = 1 – 2/6  5 = −4/6;

i = 3; a 33 = a 33 – с a 13 = −1 – 2/6  8 = −22/6.

Выход из цикла Vс преобразованной системой

;
; (***)

и вход по линии А в циклI

k = 2;p =k = 2;m =k +1 = 3; вход вБлок 5

| a 22 | < |a 32 | = | 16/6 | > | 4/6 | из (***).

Выход из цикла IIи вход в циклIII

j = 2 (j от 2 до 3);

r = a kj = a 22 = 16/6; a 22 = a 22 ; a 22 = r = 16/6; из (***)

r =a 23 = −20/6;a 23 =a 23 ;a 23 =r = −20/6; из (***)

В данном случае на диагонали оказался максимальный элемент, поэтому перестановка 2-ой и 3-ей строк не выполняется.

Выход из цикла IIIи вход в циклIвБлок 11

r =b 2 ;b 2 = b 2 ;b 2 =r= −20/6.

Свободный член b 2 остается на своем месте.

Вход в цикл IV

m =k +1 = 2+1 = 3;

c = a mk / a kk = a 32 / a 22 = (–4/6) / (16/6); из (***)

b 3 =b 3 –c b 2 = −22/6 – (–1/4)(–20/6) = −27/6 из (***)

Выход из цикла IVи вход в циклV

i = 2 (i от 2 до 3); a 32 = a 32 – с a 22 = −4/6 – (–1/4)  16/6 = 0;

i = 3;a 33 =a 33 –с a 23 = −22/6 – (–1/4)(–20/6) = −27/6.

Выход из цикла Vи выход из циклаI.

Обратный ход метода Гаусса

В Блоках 1924 реализуются формулы (7).

В Блоке 19 из последнего уравнения находится значениеx n (n = 3)

x 3 =b n / a nn =b 3 / a 33 = (–27/6) / (–27/6) = 1.

Вход в цикл VI(Блок 20), в котором значение переменной циклаk изменяется отn –1 до 1 с шагом (–1)

Блок 21s= 0

Вход в цикл VII(Блок 22)

i = k +1 = 2+1 = 3; n = 3; s = s + a ki x i = 0 + a 23 x 3 = −20/6 1 = −20/6.

Выход из цикла VIIнаБлок 24 в циклVI:

k = 2; x 2 = (b k – s)/ a nn = (b 2 – s)/ a 22 = (–20/6 +20/6)/ a 22 = 0.

k =k –1 = 2–1 = 1;

i = k + 1 = 2; s = 0 + a 12 x 2 = 5  0 = 0;

i = k + 1 = 3; s = 0 + a 13 x 3 = 8  1 = 8;

x 1 = (b 1 –s)/ a 11 = (14 – 8) / 6 = 1.

Выход из последнего цикла VII.

В Блоке 25 (цикл опущен) выполняется вывод на экран полученного решения СЛАУ – векторат.е.x i ,i =1, ...,n . В нашем случае (1; 0; 1).

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

Метод Гаусса – это просто! Почему? Известный немецкий математик Иоганн Карл Фридрих Гаусс еще при жизни получил признание величайшего математика всех времен, гения и даже прозвище «короля математики». А всё гениальное, как известно – просто! Кстати, на деньги попадают не только лохи, но еще и гении – портрет Гаусса красовался на купюре в 10 дойчмарок (до введения евро), и до сих пор Гаусс загадочно улыбается немцам с обычных почтовых марок.

Метод Гаусса прост тем, что для его освоения ДОСТАТОЧНО ЗНАНИЙ ПЯТИКЛАССНИКА.Необходимо уметь складывать и умножать! Не случайно метод последовательного исключения неизвестных преподаватели часто рассматривают на школьных математических факультативах. Парадокс, но у студентов метод Гаусса вызывает наибольшие сложности. Ничего удивительного – всё дело в методике, и я постараюсь в доступной форме рассказать об алгоритме метода.

Сначала немного систематизируем знания о системах линейных уравнений. Система линейных уравнений может:

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

Метод Гаусса – наиболее мощный и универсальный инструмент для нахождения решениялюбой системы линейных уравнений. Как мы помним, правило Крамера и матричный метод непригодны в тех случаях, когда система имеет бесконечно много решений или несовместна. А метод последовательного исключения неизвестных в любом случае приведет нас к ответу! На данном уроке мы опять рассмотрим метод Гаусса для случая №1 (единственное решение системы), под ситуации пунктов №№2-3 отведена статья. Замечу, что сам алгоритм метода во всех трёх случаях работает одинаково.

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

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

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

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

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

1) Строки матрицы можно переставлять местами. Например, в рассматриваемой матрице можно безболезненно переставить первую и вторую строки:

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

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

4) Строку матрицы можно умножить (разделить) на любое число, отличное от нуля . Рассмотрим, например, матрицу . Здесь целесообразно первую строку разделить на –3, а вторую строку – умножить на 2: . Данное действие очень полезно, поскольку упрощает дальнейшие преобразования матрицы.

5) Это преобразование вызывает наибольшие затруднения, но на самом деле ничего сложного тоже нет. К строке матрицы можно прибавить другую строку, умноженную на число , отличное от нуля. Рассмотрим нашу матрицу из практического примера: . Сначала я распишу преобразование очень подробно. Умножаем первую строку на –2: , и ко второй строке прибавляем первую строку умноженную на –2 : . Теперь первую строку можно разделить «обратно» на –2: . Как видите, строка, которую ПРИБАВЛЯЛИ не изменилась . Всегда меняется строка, К КОТОРОЙ ПРИБАВЛЯЮТ .

На практике так подробно, конечно, не расписывают, а пишут короче: Еще раз: ко второй строке прибавили первую строку, умноженную на –2 . Умножают строку обычно устно или на черновике, при этом мысленный ход расчётов примерно такой:

«Переписываю матрицу и переписываю первую строку: »

«Сначала первый столбец. Внизу мне нужно получить ноль. Поэтому единицу вверху умножаю на –2: , и ко второй строке прибавляю первую: 2 + (–2) = 0. Записываю результат во вторую строку: »

«Теперь второй столбец. Вверху –1 умножаю на –2: . Ко второй строке прибавляю первую: 1 + 2 = 3. Записываю результат во вторую строку: »

«И третий столбец. Вверху –5 умножаю на –2: . Ко второй строке прибавляю первую: –7 + 10 = 3. Записываю результат во вторую строку: »

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

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

! ВНИМАНИЕ : рассмотренные манипуляции нельзя использовать , если Вам предложено задание, где матрицы даны «сами по себе». Например, при «классических» действиях с матрицами что-то переставлять внутри матриц ни в коем случае нельзя! Вернемся к нашей системе . Она практически разобрана по косточкам.

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

(1) Ко второй строке прибавили первую строку, умноженную на –2. И снова: почему первую строку умножаем именно на –2? Для того чтобы внизу получить ноль, а значит, избавиться от одной переменной во второй строке.

(2) Делим вторую строку на 3.

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

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

Теперь систему нужно «раскрутить» в обратном направлении – снизу вверх, этот процесс называется обратным ходом метода Гаусса .

В нижнем уравнении у нас уже готовый результат: .

Рассмотрим первое уравнение системы и подставим в него уже известное значение «игрек»:

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

Пример 1

Решить методом Гаусса систему уравнений:

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

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

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

Теперь первая строка у нас останется неизменной до конца решения . Уже легче.

Единица в левом верхнем углу организована. Теперь нужно получить нули вот на этих местах:

Нули получаем как раз с помощью «трудного» преобразования. Сначала разбираемся со второй строкой (2, –1, 3, 13). Что нужно сделать, чтобы на первой позиции получить ноль? Нужно ко второй строке прибавить первую строку, умноженную на –2 . Мысленно или на черновике умножаем первую строку на –2: (–2, –4, 2, –18). И последовательно проводим (опять же мысленно или на черновике) сложение, ко второй строке прибавляем первую строку, уже умноженную на –2 :

Результат записываем во вторую строку:

Аналогично разбираемся с третьей строкой (3, 2, –5, –1). Чтобы получить на первой позиции ноль, нужно к третьей строке прибавить первую строку, умноженную на –3 . Мысленно или на черновике умножаем первую строку на –3: (–3, –6, 3, –27). И к третьей строке прибавляем первую строку, умноженную на –3 :

Результат записываем в третью строку:

На практике эти действия обычно выполняются устно и записываются в один шаг:

Не нужно считать всё сразу и одновременно . Порядок вычислений и «вписывания» результатов последователен и обычно такой: сначала переписываем первую строку, и пыхтим себе потихонечку – ПОСЛЕДОВАТЕЛЬНО иВНИМАТЕЛЬНО :
А мысленный ход самих расчётов я уже рассмотрел выше.

В данном примере это сделать легко, вторую строку делим на –5 (поскольку там все числа делятся на 5 без остатка). Заодно делим третью строку на –2, ведь чем меньше числа, тем проще решение:

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

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

Последнее выполненное действие – причёска результата, делим третью строку на 3.

В результате элементарных преобразований получена эквивалентная исходной система линейных уравнений: Круто.

Теперь в действие вступает обратный ход метода Гаусса. Уравнения «раскручиваются» снизу вверх.

В третьем уравнении у нас уже готовый результат:

Смотрим на второе уравнение: . Значение «зет» уже известно, таким образом:

И, наконец, первое уравнение: . «Игрек» и «зет» известны, дело за малым:

Ответ :

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

Пример 2

Это пример для самостоятельного решения, образец чистового оформления и ответ в конце урока.

Следует отметить, что ваш ход решения может не совпасть с моим ходом решения, и это – особенность метода Гаусса . Но вот ответы обязательно должны получиться одинаковыми!

Пример 3

Решить систему линейных уравнений методом Гаусса

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

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

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

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

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

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

Скверным признаком, который свидетельствует об ошибке в вычислениях (реже – об опечатке), является «плохая» нижняя строка. То есть, если бы у нас внизу получилось что-нибудь вроде , и, соответственно, , то с большой долей вероятности можно утверждать, что допущена ошибка в ходе элементарных преобразований.

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

Ответ : .

Пример 4

Решить систему линейных уравнений методом Гаусса

Это пример для самостоятельного решения, он несколько сложнее. Ничего страшного, если кто-нибудь запутается. Полное решение и образец оформления в конце урока. Ваше решение может отличаться от моего решения.

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

Вторая особенность состоит вот в чём. Во всех рассмотренных примерах на «ступеньки» мы помещали либо –1, либо +1. Могут ли там быть другие числа? В ряде случаев могут. Рассмотрим систему: .

Здесь на левой верхней «ступеньке» у нас двойка. Но замечаем тот факт, что все числа в первом столбце делятся на 2 без остатка – и другая двойка и шестерка. И двойка слева вверху нас устроит! На первом шаге нужно выполнить следующие преобразования: ко второй строке прибавить первую строку, умноженную на –1; к третьей строке прибавить первую строку, умноженную на –3. Таким образом, мы получим нужные нули в первом столбце.

Или еще такой условный пример: . Здесь тройка на второй «ступеньке» тоже нас устраивает, поскольку 12 (место, где нам нужно получить ноль) делится на 3 без остатка. Необходимо провести следующее преобразование: к третьей строке прибавить вторую строку, умноженную на –4, в результате чего и будет получен нужный нам ноль.

Метод Гаусса универсален, но есть одно своеобразие. Уверенно научиться решать системы другими методами (методом Крамера, матричным методом) можно буквально с первого раза – там очень жесткий алгоритм. Но вот чтобы уверенно себя чувствовать в методе Гаусса, следует «набить руку», и прорешать хотя бы 5-10 десять систем. Поэтому поначалу возможны путаница, ошибки в вычислениях, и в этом нет ничего необычного или трагического.

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

Пример 5

Решить методом Гаусса систему 4-х линейных уравнений с четырьмя неизвестными.

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

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

Желаю успехов!

Решения и ответы:

Пример 2: Решение : Запишем расширенную матрицу системы и с помощью элементарных преобразований приведем ее к ступенчатому виду.
Выполненные элементарные преобразования: (1) Ко второй строке прибавили первую строку, умноженную на –2. К третьей строке прибавили первую строку, умноженную на –1. Внимание! Здесь может возникнуть соблазн из третьей строки вычесть первую, крайне не рекомендую вычитать – сильно повышается риск ошибки. Только складываем! (2) У второй строки сменили знак (умножили на –1). Вторую и третью строки поменяли местами. Обратите внимание , что на «ступеньках» нас устраивает не только единица, но еще и –1, что даже удобнее. (3) К третьей строке прибавили вторую строку, умноженную на 5. (4) У второй строки сменили знак (умножили на –1). Третью строку разделили на 14.

Обратный ход:

Ответ : .

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

Выполненные преобразования: (1) К первой строке прибавили вторую. Таким образом, организована нужная единица на левой верхней «ступеньке». (2) Ко второй строке прибавили первую строку, умноженную на 7. К третьей строке прибавили первую строку, умноженную на 6.

Со второй «ступенькой» всё хуже , «кандидаты» на неё – числа 17 и 23, а нам нужна либо единичка, либо –1. Преобразования (3) и (4) будут направлены на получение нужной единицы (3) К третьей строке прибавили вторую, умноженную на –1. (4) Ко второй строке прибавили третью, умноженную на –3. Нужная вещь на второй ступеньке получена . (5) К третьей строке прибавили вторую, умноженную на 6. (6) Вторую строку умножили на –1, третью строку разделили на -83.

Обратный ход:

Ответ :

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

Выполненные преобразования: (1) Первую и вторую строки поменяли местами. (2) Ко второй строке прибавили первую строку, умноженную на –2. К третьей строке прибавили первую строку, умноженную на –2. К четвертой строке прибавили первую строку, умноженную на –3. (3) К третьей строке прибавили вторую, умноженную на 4. К четвертой строке прибавили вторую, умноженную на –1. (4) У второй строки сменили знак. Четвертую строку разделили на 3 и поместили вместо третьей строки. (5) К четвертой строке прибавили третью строку, умноженную на –5.

Обратный ход:

Ответ :

Рассмотрим один из самых распространенных методов решения систем линейных алгебраических уравнений - метод Гаусса. Этот метод (который называют также методом последовательного исключения неизвестных) известен в различных вариантах уже более 2000 лет.

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

1. Схема единственного деления.

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

Прямой ход состоит из шагов исключения.

1-й шаг. Целью этого шага является исключение неизвестного из уравнений с номерами Предположим, что коэффициент Будем называть его главным (или ведущим) элементом 1-го шага.

Найдем величины

называемые множителями 1-ю шага. Вычтем последовательно из второго, третьего, уравнений системы (5.1) первое уравнение, умноженное соответственно на Это позволит обратить в

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

в которой вычисляются по формулам

2-й шаг. Целью этого шага является исключение неизвестного из уравнений с номерами Пусть где - коэффициент, называемый главным (или ведущим) элементом шага. Вычислим множители 2-го шага

и вычтем последовательно из третьего, четвертого, уравнений системы (5.30) второе уравнение, умноженное соответственно на . В результате получим систему

Здесь коэффициенты вычисляются по формулам

Аналогично проводятся остальные шаги. Опишем очередной шаг.

k-й шаг. В предположении, что главный (ведущий) элемент шага отличен от нуля, вычислим множители шага

и вычтем последовательно из уравнений полученной на предыдущем шаге системы уравнение, умноженное соответственно на

После шага исключения получим систему уравнений

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

Обратный ход. Из последнего уравнения системы (5.33) находим Подставляя найденное значение в предпоследнее уравнение, получим Осуществляя обратную подстановку, далее последовательно находим Вычисления неизвестных здесь проводятся по формулам

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

Вычисления 1-го шага исключения по формулам (5.29), (5.31) требуют выполнения деления, умножений и вычитаний, т. е. общее число арифметических операций составляет Аналогично, на шаге требуется операций, а на шаге - операций.

Подсчитаем теперь приближенно общее число арифметических операций прямого хода, считая размерность системы достаточно большой:

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

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

Пример 5.7. Методом Гаусса решим систему

Прямой ход. 1-й шаг. Вычислим множители Вычитая из второго, третьего и четвертого уравнений системы (5.35) первое уравнение, умноженное на соответственно получим

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

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

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

Результаты вычислений можно свести в следующую таблицу.

Таблица 5.2 (см. скан)

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

Пример 5.8. Используя метод Гаусса, решим систему уравнений

на -разрядной десятичной ЭВМ.

Прямой ход. 1-й шаг. Вычисляем множители и преобразуем систему к виду

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

2-й шаг. После вычисления множителя последнее уравнение системы должно быть преобразовано к виду где Однако на используемой ЭВМ будет получено уравнение

Действительно, коэффициент определяется точно, так как при его вычислении не возникает чисел, мантиссы которых имеют более 6 разрядов. В то же время при вычислении умножение коэффициента 3.0001 на дает 7-разрядное число 105003.5, после округления которого до 6 разрядов получится 105004. Вычисление 62) завершается выполнением операции вычитания: . После округления последнего числа до 6 разрядов мантиссы приходим к уравнению (5.41).

Обратный ход. Из уравнения (5.41) находим и 1.00001. Сравнение с истинным значением показывает, что эта величина получена с очень высокой для используемой ЭВМ точностью. Дальнейшие вычисления дают

После округления имеем .

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

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

В действительности причина состоит в использовании на шаге малого ведущего элемента Следствием этого стало появление большого

множителя и существенное возрастание коэффициента в последнем уравнении системы.

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

2. Метод Гаусса с выбором главного элемента по столбцу (схема частичного выбора).

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

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

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

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

Пример 5.9. Решим систему уравнений (5.39) методом Гаусса с выбором главного элемента по столбцу на -разрядной десятичной ЭВМ.

Прямой ход. 1-й шаг. Максимальный в первом столбце элемент матрицы находится в первой строке, поэтому перестановка уравнений не нужна. Здесь 1-й шаг проводится точно так же, как и в примере 5.8.

2-й шаг. Среди элементов матрицы системы (5.40) максимальный принадлежит третьему уравнению. Меняя местами второе и третье уравнения, получим систему

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

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

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

Вычислительная устойчивость схемы частичного выбора. Детальное исследование метода Гаусса показывает, что действительной причиной неустойчивости схемы единственного деления является возможность неограниченного роста элементов промежуточных матриц в процессе прямого хода. Так как на шаге схемы частичного выбора 1, то для вычисленных по формулам (5.42) элементов справедлива оценка Следовательно, максимальное по модулю значение элементов матрицы возрастает на одном шаге не более чем в 2 раза и в самом неблагоприятном случае шаг прямого хода даст коэффициент роста

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

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

Наличие в оценке (5.43) множителя указывает на то, что при большом схема частичного выбора может оказаться плохо обусловленной и возможна существенная потеря точности. Однако практика матричных вычислений показывает, что существенный рост элементов матрицы происходит крайне редко. В подавляющем большинстве случаев действительное значение коэффициента роста не превышает 8-10. Если система хорошо обусловлена, то погрешность вычисленного решения оказывается, как правило, малой.

Иногда для проверки качества приближенного решения х

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

где то же, что и в оценке (5.43). Заметим, что в неравенство (5.44) не входит число обусловленности.

3. Метод Гаусса с выборок главного элемента по всей матрице (схема полного выбора).

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

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

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

4. Случаи, когда выбор главных элементов не нужен.

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

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

5. Масштабирование.

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

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

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

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

Достоинства метода:

a) менее трудоёмкий по сравнению с другими методами;

b) позволяет однозначно установить, совместна система или нет, и если совместна, найти её решение;

c) позволяет найти максимальное число линейно независимых уравнений - ранг матрицы системы.

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

Помимо аналитического решения СЛАУ, метод Гаусса также применяется для:

a) нахождения матрицы, обратной к данной (к матрице справа приписывается единичная такого же размера, что и исходная: , после чего приводится к виду единичной матрицы методом Гаусса-Жордана; в результате на месте изначальной единичной матрицы справа оказывается обратная к исходной матрица:);

b) определения ранга матрицы (согласно следствию из теоремы Кронекера-Капелли ранг матрицы равен числу её главных переменных);

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

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

Комбинаторика.

Сколькими способами трое мальчиков - Алмас, Болат, Сабыр - могут стоять в одном ряду? - Это не трудно, напишем все возможные случаи (комбинации): АБС, АСБ, БАС, БСА, САБ, СБА. Всего шесть комбинаций.

Допустим к ним присоединился еще один мальчик Даурен. Каковы будут способы расположения в этом случае? В возможных шести случаях Даурен может стоять первым, вторым, третьим и последним:

ДАБС, ДАСБ, ДБАС, ДБСА, ДСАБ, ДСБА;
АДБС, АДСБ, БДАС, БДСА, СДАБ, СДБА;
АБДС, АСДБ, БАДС, БСДА, САДБ, СБДА;
АБСД, АСБД, БАСД, БСАД, САБД, СБАД.

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

1. Перестановка. Рассмотрим число случаев в предыдущей задаче. Мы переставили местами буквы А, Б, С и посчитали число всевозможных комбинаций, оно равнялось 6. А когда число мальчиков увеличилось на единицу, переставь местами буквы А, Б, С, Д, мы нашли число всевозможных комбинаций, оно равнялось 24.

ОПРЕДЕЛЕНИЕ. Перестановкой из n различных элементов называются комбинации, которые состоят из n элементов и отличаются друг от друга только порядком их расположения.

Число перестановок из n различных элементов обозначают P n и подсчитывают по формуле:

здесь n! (читается "эн факториал") означает произведение всех натуральных чисел от 1 до n:

Понятно, что один факториал равен единице, 1! = 1, вместе с этим, в математике принято считать что и ноль факториал равен единице. И так 0! = 1.

Вернемся к примеру. Здесь n=3. Следовательно, можно найти искомое число перестановок по формуле (1): P 3 =3!=1 2 3=6. Аналогично, число перестановок из четырех букв равно: P 4 =4!=1 2 3 4=24

Пример 7. Найдем значение выражения с факториалами 8!/6! 2!

Сначала преобразуем 8!=1 2 3 4 5 6 7 8=6! 7 8

Это преобразование подставим в выражение и упростим. 8!/6! 2=6! 7 8/6! 2=7 8/2=28

2. Размещения. Рассмотрим пример. Сколько двузначных чисел (цифры не повторяются) можно записать с помощью цифр 7, 8, 9. Это можно сделать в двух этапах: первый этап - определение количество подбора разрядов десятков числа, он равен 3 (любая из данных 3 цифр может занять разряд десятков); второй этап - определение количество подбора разрядов единиц числа, он равен 2 (любая цифра из оставшихся двух может занять разряд единиц). По правилу умножения из трех чисел можно составить всего 3 2=6 различных двузначных чисел. Действительно, можно в этом убедиться непосредственно записывая эти числа 78, 79, 87, 89, 97, 98, При решении задачи мы расположили по два элемента из трех, причем эти комбинации отличаются либо составом (78, 98), либо порядком их расположения (78, 87).

ОПРЕДЕЛЕНИЕ. Размещением из n элементов по m элементов (m n) называются комбинации, состоящие из m элементов, взятых из данных n различных элементов, отличающихся друг от друга либо самими элементами, либо порядком их расположения.

Число размещений из n элементов по m элементов обозначают и читают так: "А из эн по эм". Чтобы найти используют формулу:

(15)

Рассмотрим еще один пример. В 5 классе изучают 10 предметов. Сколькими способами можно составить расписание, если в этот день должно быть 4 различных урока?

Чтобы найти число способов расположения 10-ти предметов по четыре предмета, воспользуемся формулой (15) нахождения числа размещений из 10 элементов по 4 элемента:

Итак, 10 предметов по 4 предмета можно расположить 5040 различными способами.

3. Сочетания. Пример. Нужно составить произведения двух различных чисел из данных трех чисел 7, 8, 9.

Учитывая переместительное свойство умножения, имеем: 7 8=56, 7 9=63, 8 9=72. При решении задачи мы отобрали по два элемента из трех, причем эти комбинации отличаются только составом (78, 98), а их расположения не влияют на произведение.

ОПРЕДЕЛЕНИЕ. Сочетанием из n элементов по m элементов (m n) называются комбинации, состоящие из m элементов, взятых из данных n различных элементов, отличающиеся друг от друга только составом.

Число сочетаний из n элементов по m элементов обозначают и читают так: "це из эн по эм". Чтобы найти используют формулу:

(16)

В нашем примере n=3, а m=2. Тогда

Рассмотрим еще пример. В классе 25 учеников, из них 12 мальчиков. а) Нужно составить дежурство по два человека, причем пары должны состоят либо из мальчиков, либо из девочек. б) Сколько можно создать групп для дежурства, из двух мальчиков и одной девочки?

Решение. а) При решении этой задачи воспользуемся правилом сложения и формулой сочетания. Сначала посчитаем сколько пар можно создать из мальчиков (m 1) и из девочек (m 2), после найдем их сумму (m=m 1 +m 2).

Чтобы определить сколько пар можно создать из 12 мальчиков воспользуемся формулой для подсчета числа сочетаний из 12 элементов по 2 элемента

Из девочек можно создать 78 различных пар. Тогда по два мальчика и по две девочки всего можно создать m=66+78=144 различных пар.

б) При решении этой задачи воспользуемся правилом умножения и формулой сочетания. В группе два мальчика и одна девочка. Сначала посчитаем сколькими способами можно выбрать из 12 мальчиков по два мальчика (m 1) и из 13 девочек одну девочку (m 2), затем перемножим полученные результаты (m=m 1 m 2).
Из 12 мальчиков 2 мальчика можно выбрать 66 различными способами. А из 13 девочек 1 девочку можно выбрать следующим образом:

Тогда группу из двух мальчиков и из одной девочки можно создать m=66 13=856 различными способами.

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

Определение 1.1 . Матрицей называется прямоугольная таблица чисел.

Обозначения: А – матрица, - элемент матрицы, номер строки, в которой стоит данный элемент, номер соответствующего столбца; m – число строк матрицы, n – число ее столбцов.

Определение 1.2 . Числа m и n называются размерностями матрицы.

Определение 1.3. Матрица называется квадратной , если m = n. Число n в этом случае называют порядком квадратной матрицы.

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

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

.

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

1. 2.

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

А` , называемая транспонированной по отношению к матрице А , элементы которой связаны с элементамиА соотношением a` ij = a ji .

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

Что значит решить методом Гаусса?

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

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

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

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

Это описание решения методом Гаусса в самых общих чертах. А что получится, если вдруг у системы нет решения? Или их бесконечно много? Чтобы ответить на эти и еще множество вопросов, необходимо рассмотреть отдельно все элементы, использующиеся при решении методом Гаусса.

Матрицы, их свойства

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

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

Матрица имеет размер. Ее "ширина" - число строк (m), "длина" - число столбцов (n). Тогда размер матрицы A (для их обозначения обычно используются заглавные латинские буквы) будет обозначаться как A m×n . Если m=n, то эта матрица квадратная, и m=n - ее порядок. Соответственно, любой элемент матрицы A можно обозначить через номер его строки и столбца: a xy ; x - номер строки, изменяется , y - номер столбца, изменяется .

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

Определитель

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

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

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

Классификация систем

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

По тому, как обстоят дела с рангом, СЛАУ можно разделить на:

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

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

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

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

  1. Перестановка строк. Очевидно, что если в записи системы поменять порядок уравнений, то на решение это никак не повлияет. Следовательно, в матрице этой системы также можно менять местами строки, не забывая, конечно, про столбец свободных членов.
  2. Умножение всех элементов строки на некоторый коэффициент. Очень полезно! С помощью него можно сократить большие числа в матрице или убрать нули. Множество решений, как обычно, не изменится, а выполнять дальнейшие операции станет удобнее. Главное, чтобы коэффициент не был равен нулю.
  3. Удаление строк с пропорциональными коэффициентами. Это отчасти следует из предыдущего пункта. Если две или более строки в матрице имеют пропорциональные коэффициенты, то при умножении/делении одной из строк на коэффициент пропорциональности получаются две (или, опять же, более) абсолютно одинаковые строки, и можно убрать лишние, оставив только одну.
  4. Удаление нулевой строки. Если в ходе преобразований где-то получилась строка, в которой все элементы, включая свободный член, - ноль, то такую строку можно назвать нулевой и выкинуть из матрицы.
  5. Прибавление к элементам одной строки элементов другой (по соответствующим столбцам), умноженных на некоторый коэффициент. Самое неочевидное и самое важное преобразование из всех. На нем стоит остановиться поподробнее.

Прибавление строки, умноженной на коэффициент

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

a 11 a 12 ... a 1n | b1

a 21 a 22 ... a 2n | b 2

Допустим, необходимо ко второй прибавить первую, умноженную на коэффициент "-2".

a" 21 = a 21 + -2×a 11

a" 22 = a 22 + -2×a 12

a" 2n = a 2n + -2×a 1n

Затем в матрице вторая строка заменяется на новую, а первая остается без изменений.

a 11 a 12 ... a 1n | b1

a" 21 a" 22 ... a" 2n | b 2

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

В общем виде

Пусть существует система. Она имеет m уравнений и n корней-неизвестных. Записать ее можно следующим образом:

Из коэффициентов системы составляется основная матрица. В расширенную матрицу добавляется столбец свободных членов и для удобства отделяется чертой.

  • первая строка матрицы умножается на коэффициент k = (-a 21 /a 11);
  • первая измененная строка и вторая строка матрицы складываются;
  • вместо второй строки в матрицу вставляется результат сложения из предыдущего пункта;
  • теперь первый коэффициент в новой второй строке равен a 11 × (-a 21 /a 11) + a 21 = -a 21 + a 21 = 0.

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

  • коэффициент k = (-a 32 /a 22);
  • с "текущей" строкой складывается вторая измененная строка;
  • результат сложения подставляется в третью, четвертую и так далее строки, а первая и вторая остаются неизменными;
  • в строках матрицы уже два первых элемента равны нулю.

Алгоритм надо повторять, пока не появится коэффициент k = (-a m,m-1 /a mm). Это значит, что в последний раз алгоритм выполнялся только для нижнего уравнения. Теперь матрица похожа на треугольник, или имеет ступенчатую форму. В нижней строчке имеется равенство a mn × x n = b m . Коэффициент и свободный член известны, и корень выражается через них: x n = b m /a mn . Полученный корень подставляется в верхнюю строку, чтобы найти x n-1 = (b m-1 - a m-1,n ×(b m /a mn))÷a m-1,n-1 . И так далее по аналогии: в каждой следующей строке находится новый корень, и, добравшись до "верха" системы, можно отыскать множество решений . Оно будет единственным.

Когда нет решений

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

Когда решений бесконечное количество

Может получиться так, что в приведенной треугольной матрице нет строк с одним элементом-коэффициентом уравнения, и одним - свободным членом. Есть только такие строки, которые при переписывании имели бы вид уравнения с двумя или более переменными. Значит, у системы имеется бесконечное число решений. В таком случае ответ можно дать в виде общего решения. Как это сделать?

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

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

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

Решение на конкретных примерах

Вот система уравнений.

Для удобства лучше сразу составить ее матрицу

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

вторая строка: k = (-a 21 /a 11) = (-3/1) = -3

a" 21 = a 21 + k×a 11 = 3 + (-3)×1 = 0

a" 22 = a 22 + k×a 12 = -1 + (-3)×2 = -7

a" 23 = a 23 + k×a 13 = 1 + (-3)×4 = -11

b" 2 = b 2 + k×b 1 = 12 + (-3)×12 = -24

третья строка: k = (-a 3 1 /a 11) = (-5/1) = -5

a" 3 1 = a 3 1 + k×a 11 = 5 + (-5)×1 = 0

a" 3 2 = a 3 2 + k×a 12 = 1 + (-5)×2 = -9

a" 3 3 = a 33 + k×a 13 = 2 + (-5)×4 = -18

b" 3 = b 3 + k×b 1 = 3 + (-5)×12 = -57

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

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

Стоит также заметить, что в третьей строке все элементы кратны трем. Тогда можно сократить строку на это число, умножая каждый элемент на "-1/3" (минус - заодно, чтобы убрать отрицательные значения).

Выглядит гораздо приятнее. Теперь надо оставить в покое первую строку и поработать со второй и третьей. Задача - прибавить к третьей строке вторую, умноженную на такой коэффициент, чтобы элемент a 32 стал равен нулю.

k = (-a 32 /a 22) = (-3/7) = -3/7 (если в ходе некоторых преобразований в ответе получилось не целое число, рекомендуется для соблюдения точности вычислений оставить его "как есть", в виде обыкновенной дроби, а уже потом, когда получены ответы, решать, стоит ли округлять и переводить в другую форму записи)

a" 32 = a 32 + k×a 22 = 3 + (-3/7)×7 = 3 + (-3) = 0

a" 33 = a 33 + k×a 23 = 6 + (-3/7)×11 = -9/7

b" 3 = b 3 + k×b 2 = 19 + (-3/7)×24 = -61/7

Снова записывается матрица с новыми значениями.

1 2 4 12
0 7 11 24
0 0 -9/7 -61/7

Как видно, полученная матрица уже имеет ступенчатый вид. Поэтому дальнейшие преобразования системы по методу Гаусса не требуются. Что здесь можно сделать, так это убрать из третьей строки общий коэффициент "-1/7".

Теперь все красиво. Дело за малым - записать матрицу опять в виде системы уравнений и вычислить корни

x + 2y + 4z = 12 (1)

7y + 11z = 24 (2)

Тот алгоритм, по которому сейчас будут находиться корни, называется обратным ходом в методе Гаусса. В уравнении (3) содержится значение z:

y = (24 - 11×(61/9))/7 = -65/9

И первое уравнение позволяет найти x:

x = (12 - 4z - 2y)/1 = 12 - 4×(61/9) - 2×(-65/9) = -6/9 = -2/3

Такую систему мы имеем право назвать совместной, да еще и определенной, то есть имеющей единственное решение. Ответ записывается в следующей форме:

x 1 = -2/3, y = -65/9, z = 61/9.

Пример неопределенной системы

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

х 1 + х 2 + х 3 + х 4 + х 5 = 7 (1)

3х 1 + 2х 2 + х 3 + х 4 - 3х 5 = -2 (2)

х 2 + 2х 3 + 2х 4 + 6х 5 = 23 (3)

5х 1 + 4х 2 + 3х 3 + 3х 4 - х 5 = 12 (4)

Сам вид системы уже настораживает, потому что количество неизвестных n = 5, а ранг матрицы системы уже точно меньше этого числа, потому что количество строк m = 4, то есть наибольший порядок определителя-квадрата - 4. Значит, решений существует бесконечное множество, и надо искать его общий вид. Метод Гаусса для линейных уравнений позволяет это сделать.

Сначала, как обычно, составляется расширенная матрица.

Вторая строка: коэффициент k = (-a 21 /a 11) = -3. В третьей строке первый элемент - еще до преобразований, поэтому не надо ничего трогать, надо оставить как есть. Четвертая строка: k = (-а 4 1 /а 11) = -5

Умножив элементы первой строки на каждый их коэффициентов по очереди и сложив их с нужными строками, получаем матрицу следующего вида:

Как можно видеть, вторая, третья и четвертая строки состоят из элементов, пропорциональных друг другу. Вторая и четвертая вообще одинаковые, поэтому одну из них можно убрать сразу, а оставшуюся умножить на коэффициент "-1" и получить строку номер 3. И опять из двух одинаковых строк оставить одну.

Получилась такая матрица. Пока еще не записана система, нужно здесь определить базисные переменные - стоящие при коэффициентах a 11 = 1 и a 22 = 1, и свободные - все остальные.

Во втором уравнении есть только одна базисная переменная - x 2 . Значит, ее можно выразить оттуда, записав через переменные x 3 , x 4 , x 5 , являющиеся свободными.

Подставляем полученное выражение в первое уравнение.

Получилось уравнение, в котором единственная базисная переменная - x 1 . Проделаем с ней то же, что и с x 2 .

Все базисные переменные, которых две, выражены через три свободные, теперь можно записывать ответ в общем виде.

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

16, 23, 0, 0, 0.

Пример несовместной системы

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

x + y - z = 0 (1)

2x - y - z = -2 (2)

4x + y - 3z = 5 (3)

Как обычно, составляется матрица:

1 1 -1 0
2 -1 -1 -2
4 1 -3 5

И приводится к ступенчатому виду:

k 1 = -2k 2 = -4

1 1 -1 0
0 -3 1 -2
0 0 0 7

После первого же преобразования в третьей строке содержится уравнение вида

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

Преимущества и недостатки метода

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

Применение

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

Поделиться: