連立1次方程式の掃き出し法|行列の行基本変形の考え方

線形代数学の基本
線形代数学の基本

いくつかの1次方程式を同時に満たす

    \begin{align*}\begin{cases}x+y+z=2\\x+2y+3z=4\end{cases}\end{align*}

のような,複数の未知数に関する方程式を連立1次方程式といいますね.

実は「線形代数学のベースは連立1次方程式である」と言っても良いほど,線形代数では連立1次方程式が重要です.

中学数学以来扱ってきたように,連立1次方程式の基本解法として加減法がありますが,加減法は行列を考えることによって本質的に全く同じことができ,この行列を用いた解法を掃き出し法といいます.

この記事では

  • 連立1次方程式
  • 掃き出し法

を説明します.

なお,この記事では特に断らない限り実行列・実ベクトルを扱うことにしますが,複素行列など一般のを成分とする行列・ベクトルに対しても同様です.

線形代数学の参考文献

以下は線形代数学に関するオススメの教科書です.

大学教養 線形代数(加藤文元 著)

数学科など理論系の学生向けの線形代数の入門書です.平易な例から丁寧に説明されています.

手を動かしてまなぶ 線形代数(藤岡敦 著)

理論と演習のバランスをとりながら勉強したい人にオススメの入門書です.

連立1次方程式

まずは連立1次方程式を行列・ベクトルを用いて表す方法を考えましょう.

連立1次方程式とは?

$x,y,z$の連立1次方程式とは

    \begin{align*} \begin{cases} x+y+z=2\\ 3x-2y+2z=4\\ 2x-3y+z=2\\ x+2y-5=2 \end{cases},\quad \begin{cases} x+y+z=2\\ 2x+2y+2z=5 \end{cases} \end{align*}

のように,未知数$x,y,z$の1次方程式をいくつか同時に満たすような連立方程式のことですね.

未知数を列ベクトルにまとめて$\m{x}=\bmat{x\\y\\z}$として,単に$\m{x}$の方程式ということもよくあります.

このように,連立方程式では

  • (未知数の個数) < (連立している方程式の個数)
  • (未知数の個数) > (連立している方程式の個数)

のいずれの場合もありえます.

また,連立1次方程式のとは方程式に代入して成り立つ数の組のことですが,きちんと書くと次のようになりますね.

$x_{1},\dots,x_{n}$の方程式$f(x_{1},\dots,x_{n})=0$に対して,

    \begin{align*}f(\alpha_{1},\dots,\alpha_{n})=0\end{align*}

を満たす$(\alpha_{1},\dots,\alpha_{n})$を方程式$f(x_{1},\dots,x_{n})=0$のといい,方程式の解を全て求めることを方程式を解くという.

連立1次方程式を行列・ベクトルで表す方法

例えば,連立1次方程式$\begin{cases}x+2y+3z=6\\4x+5y+6z=9\\7x+8y+9z=12\end{cases}$は列ベクトルの等式として

    \begin{align*}\bmat{x+2y+3z\\4x+5y+6z\\7x+8y+9z}=\bmat{6\\9\\12}\end{align*}

と表せますね.さらに,この左辺は行列を用いて

    \begin{align*}\bmat{1&2&3\\4&5&6\\7&8&9}\bmat{x\\y\\z}=\bmat{6\\9\\12}\end{align*}

行列とベクトルの積に書き換えられますね.

このように,連立1次方程式は行列・ベクトルを用いて表すことができます.

$x_1,x_2,\dots,x_n$に関する連立1次方程式

    \begin{align*}\begin{cases} a_{11}x_1+a_{12}x_2+\dots+a_{1n}x_n=c_{1}\\ a_{21}x_1+a_{22}x_2+\dots+a_{2n}x_n=c_{2}\\ \hspace{5em}\vdots\\ a_{m1}x_1+a_{m2}x_2+\dots+a_{mn}x_n=c_{m} \end{cases}\end{align*}

は$A\m{x}=\m{c}$と表せる.

ただし,$A$, $\m{x}$, $\m{c}$はそれぞれ$m\times n$次行列,$n$次列ベクトル,$m$次列ベクトルで

    \begin{align*}A=\bmat{a_{11}&\dots&a_{1n}\\\vdots&\dots&\vdots\\a_{m1}&\dots&a_{mn}},\quad \m{x}=\bmat{x_1\\\vdots\\x_n},\quad \m{c}=\bmat{c_{1}\\\vdots\\c_{m}}\end{align*}

である.

系数行列・拡大係数行列

連立1次方程式$\begin{cases}x+2y+3z=6\\4x+5y+6z=9\\7x+8y+9z=12\end{cases}$が

    \begin{align*}\bmat{1&2&3\\4&5&6\\7&8&9}\bmat{x\\y\\z}=\bmat{6\\9\\12}\end{align*}

と表せるように,$\m{x}$の連立1次方程式$A\m{x}=\m{c}$の$A$は係数をまとめた行列になっています.

このことを踏まえて,次のように名前をつけましょう.

$m\times n$次行列$A$と$\m{c}\in\R^{m}$を考える.$\m{x}$の方程式$A\m{x}=\m{c}$に対して,

  • 行列$A$を係数行列 (coefficient matrix)
  • 行列$[A,\m{c}]$を拡大係数行列 (enlarged coefficient matrix)

という.

例えば,上の連立1次方程式$\begin{cases}x+2y+3z=6\\4x+5y+6z=9\\7x+8y+9z=12\end{cases}$に対して,

  • 係数行列は$\bmat{1&2&3\\4&5&6}$
  • 拡大係数行列は$\bmat{1&2&3&7\\4&5&6&8}$

ですね.

行列の基本変形

行列の重要な変形に基本変形というものがあり,基本変形は連立1次方程式の加減法と密接に関わっています.

連立1次方程式の加減法

連立1次方程式を解く方法として加減法がありました.

連立1次方程式について

  1. ある等式を$k$倍する($k\neq0$)
  2. ある等式の$k$倍を別の等式に加える
  3. ある等式と別の等式の順番を入れ替える

という3つの操作を繰り返すことによって解を求める手続きを加減法という.

例えば,方程式$\begin{cases}2x+3y=8\\x+2y=5\end{cases}$は以下のように加減法により解くことができますね.

    \begin{align*}\left\{\begin{matrix} 2x&+&3y&=&8\\ x&+&2y&=&5 \end{matrix}\right. \iff&\left\{\begin{matrix} x&+&2y&=&5\\ 2x&+&3y&=&8 \end{matrix}\right. \\\iff&\left\{\begin{matrix} x&+&2y&=&5\\ &-&y&=&-2 \end{matrix}\right. \\\iff&\left\{\begin{matrix} x&&&=&1\\ &-&y&=&-2 \end{matrix}\right. \\\iff&\left\{\begin{matrix} x&&&=&1\\ &&y&=&2 \end{matrix}\right.\end{align*}

行基本変形

連立1次方程式の加減法では係数だけを見ていれば十分だということに気が付きます.

このため,いまの加減法は以下のように拡大係数行列$\bmat{2&3&8\\1&2&5}$の変形と対応していますね.

    \begin{align*}&\left\{\begin{matrix} 2x&+&3y&=&8\\ x&+&2y&=&5 \end{matrix}\right. &\leftrightarrow&&\bmat{2&3&8\\1&2&5} \\\iff&\left\{\begin{matrix} x&+&2y&=&5\\ 2x&+&3y&=&8 \end{matrix}\right. &\leftrightarrow&&\bmat{1&2&5\\2&3&8} \\\iff&\left\{\begin{matrix} x&+&2y&=&5\\ &-&y&=&-2 \end{matrix}\right. &\leftrightarrow&&\bmat{1&2&5\\0&-1&-2} \\\iff&\left\{\begin{matrix} x&&&=&1\\ &-&y&=&-2 \end{matrix}\right. &\leftrightarrow&&\bmat{1&0&1\\0&-1&-2} \\\iff&\left\{\begin{matrix} x&&&=&1\\ &&y&=&2 \end{matrix}\right. &\leftrightarrow&&\bmat{1&0&1\\0&1&2}\end{align*}

この連立1次方程式の加減法に対応する行列の変形を行基本変形といいます.

行列について

  1. ある行を$k$倍する($k\neq0$)
  2. ある行の$k$倍を別の行に加える
  3. ある行と別の行を入れ替える

という3つの変形を併せて行基本変形という.

掃き出し法

拡大係数行列の行基本変形によって連立1次方程式を解く方法を掃き出し法といいます.

掃き出し法で考える際には,元の連立1次方程式とどのように対応しているかを考えることが大切です.

連立1次方程式$\begin{cases}x+2y+z=3\\3x+4y+5z=3\end{cases}$の拡大係数行列を答えよ.また,掃き出し法により解け.

拡大係数行列は$\bmat{1&2&1&3\\3&4&5&3}$である.この拡大係数行列は行基本変形により

    \begin{align*}\bmat{1&2&1&3\\3&4&5&3} \to&\bmat{1&2&1&3\\0&-2&2&-6} \\\to&\bmat{1&2&1&3\\0&1&-1&3} \\\to&\bmat{1&0&3&-3\\0&1&-1&3}\end{align*}

となるから,連立1次方程式は

    \begin{align*}\begin{cases}x+2y+z=3\\3x+4y+5z=3\end{cases} \iff\begin{cases}x+3z=-3\\y-z=3\end{cases}\end{align*}

と変形されることが分かる.よって,解は$(x,y,z)=(-3-3k,3+k,k)$である($k$は任意定数).

いまの問題で任意定数が登場したので,任意定数が何なのかを説明しておきます.いまの問題の連立1次方程式を変形してできた

    \begin{align*}\begin{cases}x+3z=-3\\y-z=3\end{cases}\end{align*}

から,たとえば

  • $z=0$なら$x=-3$, $y=3$
  • $z=1$なら$x=-6$, $y=4$
  • $z=2$なら$x=-9$, $y=5$

のように,$z$の値を決めれば$x$と$y$の値も決まります.そこで$z=k$とおけば$(x,y,z)=(-3-3k,3+k,k)$は全て解となりますね.

この$c$のように「どんな定数でもいいなら文字でおいてしまおう」というのが任意定数の考え方なわけですね.

なお,任意定数の取り方についてはのちの記事でも詳しく説明します.

コメント