В предыдущих уроках мы научились работать с матрицами, находить их ранги, миноры, складывать и вычитать их между собой.
Теперь давайте разбираться, как матрицы помогают в решении систем уравнений. В этом уроке мы познакомимся с одной теоремой, которая очень помогает решать системы.
Начиная с этого урока мы будем подробнее знакомиться с системами уравнений. Чтобы нам было удобнее обращаться к этому понятию, введем сокращение СЛАУ — система линейных алгебраических уравнений. Эти термины совпадают по смыслу, можно использовать их как синонимы.
Теорема Кронекера-Капелли
Представим, что нам нужно решить систему уравнений. Мы заранее не знаем, существуют ли у нее решения. Чтобы не тратить время на нерешаемые системы, мы сначала проверяем их по теореме Кронекера-Капелли.
Сформулируем ее так:
Система из
mуравнений иnнеизвестных имеет решение, если равны ранги расширенной и основной матрицы
Другими словами, мы должны составить две матрицы — основную и расширенную. Если их ранги равны, то у системы есть решения.
Разберем подробнее разницу между двумя матрицами:
- Основная матрица — это сокращенная запись системы уравнений. В ней мы записываем только коэффициенты
- Расширенная матрица – это полная запись. В ней мы добавляем еще один столбец. Он содержит значения — числа, которые в уравнениях находятся справа от знака равенства
Разберемся, как это работает на практике. Возьмем такую систему:
{
2x-y-2z=-2
-x+y+z=0
x-2y+z=8
2x-2y=6
}
Попробуем определить, есть ли у нее решения. Пройдем весь процесс по этапам.
Этап 1. Найдем матрицу коэффициентов
Для начала мы возьмем систему уравнений и найдем ее матрицу коэффициентов. Для этого нужны только левые части уравнений. Каждое уравнение превратится в строчку:
[[2x,-y,-2z]]
Рядом с переменной x стоит коэффициент 2, рядом с y стоит -1, с z стоит -2. Знаки коэффициентов тоже учитываются. Эти числа будут первой строчки матрицы. С остальными уравнениями делаем то же самое:
[[2x,-y,-2z],
[-x,y,z],
[x,-2y,z],
[2x,-2y,0]]
В итоге на первом этапе мы нашли матрицу коэффициентов:
[[2,-1,-2],[-1,1,1],[1,-2,1],[2,-2,0]]
Этап 2. Найдем ранг матрицы
На втором этапе мы вычислим ранг матрицы. Для этого мы сначала приведем матрицу к ступенчатому виду, используя элементарные преобразования над строками и столбцами матрицы:
Сначала первую строку делим на 2:
[[1,-0.5,-1],[-1,1,1],[1,-2,1],[2,-2,0]]
Далее мы делаем еще три действия:
- Ко второй строке добавляем первую строку, умноженную на
1 - От третьей строки отнимаем первую строку, умноженную на
1 - От четвертой строки отнимаем первую строку, умноженную на
2
Получается такая матрица:
[[1,-0.5,-1],[0,0.5,0],[0,-1.5,2],[0,-1,2]]
Затем вторую строку делим на 0.5:
[[1,-0.5,-1],[0,1,0],[0,-1.5,2],[0,-1,2]]
Проводим еще два действия:
- К третьей строке добавляем вторую строку, умноженную на
1.5 - К четвертой строке добавляем вторую строку, умноженную на
1
Получается такая матрица:
[[1,-0.5,-1],[0,1,0],[0,0,2],[0,0,2]]
Далее берем третью строку и делим на 2:
[[1,-0.5,-1],[0,1,0],[0,0,1],[0,0,2]]
В конце от четвертой строки отнимаем третью строку, умноженную на 2:
[[1,-0.5,-1],[0,1,0],[0,0,1],[0,0,0]]
На этом все — дальше мы не можем сделать никаких арифметических действий. Теперь мы можем определить ранг. Мы видим три ненулевых строки, поэтому ранг основной матрицы равен трем.
Этап 3. Найдем ранг расширенной матрицы
Вспомним основную матрицу с коэффициентами, которую мы вычислили на первом этапе:
[[2,-1,-2],[-1,1,1],[1,-2,1],[2,-2,0]]
Теперь нам нужно сделать из нее расширенную матрицу. Для этого мы вернемся к изначальной системе уравнений:
{
2x-y-2z=-2
-x+y+z=0
x-2y+z=8
2x-2y=6
}
Возьмем из уравнений правые части — те, что после знака =. Запишем их в матрицу четвертым столбиком:
[[2,-1,-2,-2],[-1,1,1,0],[1,-2,1,8],[2,-2,0,6]]
Теперь у нас есть расширенная матрица. Далее нам нужно найти ее ранг.
Сначала первую строку делим на 2:
[[1,-0.5,-1,-1],[-1,1,1,0],[1,-2,1,8],[2,-2,0,6]]
Затем делаем еще три действия:
- Ко второй строке добавляем первую строку, умноженную на
1 - От третьей строки отнимаем первую строку, умноженную на
1 - От четвертой строки отнимаем первую строку, умноженную на
2
Получаем такую матрицу:
[[1,-0.5,-1,-1],[0,0.5,0,-1],[0,-1.5,2,9],[0,-1,2,8]]
Далее вторую строку делим на 0.5:
[[1,-0.5,-1,-1],[0,1,0,-2],[0,-1.5,2,9],[0,-1,2,8]]
Затем проводим еще два действия:
- К третьей строке добавляем вторую строку, умноженную на
1.5 - К четвертой строке добавляем вторую строку, умноженную на
1
Получаем такую матрицу:
[[1,-0.5,-1,-1],[0,1,0,-2],[0,0,2,6],[0,0,2,6]]
Далее третью строку делим на 2:
[[1,-0.5,-1,-1],[0,1,0,-2],[0,0,1,3],[0,0,2,6]]
В конце от четвертой строки отнимаем третью строку, умноженную на 2:
[[1,-0.5,-1,-1],[0,1,0,-2],[0,0,1,3],[0,0,0,0]]
На этом все — больше доступных арифметических действий нет.
С первого взгляда на матрицу видно, что в ней есть три ненулевых строки. Поэтому мы делаем вывод, что ранг расширенной матрицы равен трем.
Этап 4. Сравним ранги
На этом этапе мы можем сравнить ранги основной и расширенной матрицы. В обоих случаях ранг равен трем.
Ранги равны, поэтому мы делаем вывод, что решения у системы есть. Теперь мы точно знаем, что система решаемая. Можно приступать к последнему этапу.
Этап 5. Найдем решения системы уравнений
Теперь найдем решения этой системы — выясним, чему равны x, y и z.
Отметим, что в нашей системе четыре уравнения, но три переменные. Чтобы все получилось, нам нужно привести нашу систему к системе из трех уравнений. Это никак не повлияет на ответ. Можно оставить те уравнения, которые вам больше приглянулись. Главное, чтобы количество переменных и уравнений совпадали.
Для дальнейших вычислений мы возьмем нашу исходную систему и оставим из нее только три уравнения:
{
2x-y-2z=-2
-x+y+z=0
x-2y+z=8
}
Далее для каждого уравнения составим матрицу и найдем ее определитель.
Для начала составим матрицу для первого уравнения:
[[-2,-1,-2],[0,1,1],[8,-2,1]]
Найдем ее определитель det_x:
-2 * 1 * 1 - 1 * 1 * 8 -2 * 0 * -2 - 8 * 1 * -2 -2 * 1 * -2 -1 * 0 * -1 = 2
Повторяем для второго уравнения:
[[2,-2,-2],[-1,0,1],[1,8,1]]
Снова находим определитель det_y:
2*0*1 -2*1*1 -2*-1*8 - 1*0*-2 - 8*1*2 - 1*-1*-2 = -4
Повторяем для третьего уравнения:
[[2,-1,-2],[-1,1,0],[1,-2,8]]
Снова находим определитель det_z:
2*1*8 -1*0*1 -2*-1*-2 - 1*1*-2 - -2*0*2 - 8*-1*-1 = 6]
В итоге мы взяли все три уравнения из системы, для каждого составили матрицу и нашли определитель. Далее можно воспользоваться методом Крамера, который по определителям помогает вычислить значения.
Сформулируем теорему Крамера. Если определитель матрицы, составленной из коэффициентов при неизвестных, отличен от нуля, то система имеет единственное решение. Если главный определитель равен нулю и хотя бы один их вспомогательных определителей отличен от нуля, то система решений не имеет. Если главный определитель и все вспомогательные определители равны нулю, то система имеет бесконечно много решений.
Обсудим, как метод Крамера применяет в общем виде. Сначала рассмотрим систему уравнений:
{
a_1 * x+b_1 * y = c_1
a_2 * x+b_2 * y = c_2
}
В общем виде определители можно найти так:
det=[[a_1,b_1],[a_2,b_2]]
det_x=[[c_1,b_1],[c_2,b_2]]
det_y=[[a_1,c_1],[a_2,c_2]]
Далее находим x и y:
x = det_x/dety = det_y/det
Вернемся к нашей задаче. Определители для x, y и z мы уже нашли. Теперь найдем общий определитель, на который будем делить. Сначала вспомним общую матрицу:
[[2,-1,-2],[-1,1,1],[1,-2,1]]
Теперь применим метод Крамера к нашей системе:
x= det_x/det = 2/2y=det_y/det = -4/2z=det_z/det = 6/2
В итоге мы получаем такие значения:
x=1y=-2z=3
Выводы
При работе с данными очень полезно сначала изучить уравнение, а уже потом приступать к его решению. Чем больше видно на начальном этапе, тем проще будет работать над решением. В этом уроке вы познакомились с одним из методов решения системы уравнений. В следующих уроках мы разберем другие методы и еще больше узнаем о работе с ними.
Самостоятельная работа
Задача 1
Решите систему уравнений методом Крамера:
{
2x+3y=12
4x+6y=24
}
Нажмите, чтобы увидеть ответ
Решим эту систему уравнений методом Крамера. Сначала найдем определители:
D = det(A) = (2*6)-(3*4) = 0D_x = det(A_x) = (12*6)-(3*24) = 36D_y = det(A_y) = (2*24)-(4*12) = 0x = D_x/D = 36/0— не существуетy = D_y/D = 0/0— не существует
Ответ: система не имеет решений
Задача 2
Решите систему уравнений методом Гаусса:
{
2x+y+z=1
-3x-2y+z=-2
x+2y+z=4
}
Нажмите, чтобы увидеть ответ
Решим систему методом Гаусса:
{
2x+y+z=1
-3x-2y+z=-2
x+2y+z=4
}
{
2x+y+z=1
-0.5y+2.5z=-0.5
1.5y+0.5z=3.5
}
{
2x+y+z=1
y-5z=1
3y+z=7
}
{
2x+y+z=1
y-5z=1
y=2.25
}
y = 2.25z = 0.25x = -0.75
Ответ: x=-0.75, y=2.25, z=0.25
Для полного доступа к курсу нужен базовый план
Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.