行基本変形による簡約化のコツ
さて行列の簡約化をしたいわけですが、なぜこのようなことをするのかという動機から。当分の目的は、1次の連立方程式を解くことです。行列を使えば、従来の解き方よりもより機械的に解くことができて、実際問題、計算機に解かせることが多いわけですが、行列で書いたほうがプログラムを書くのがかなり楽です。
連立方程式の解き方と比べてみる
たとえば、
$$
\left\{
\begin{align*}
x+3y+2z&=13\\
2x+3y-z&=5\\
x-3y-z&=-8
\end{align*}
\right.
$$
この方程式を解こうと考えます。実はこれは行列の積で書くことができて、
$$
\begin{pmatrix}
1 & 3 & 2\\
2 & 3 & -1\\
1 & -3 & -1\\
\end{pmatrix}
\begin{pmatrix}
x\\
y\\
z
\end{pmatrix}
=
\begin{pmatrix}
13\\
5\\
-8
\end{pmatrix}
$$
こう書けるわけです。我々の目標は、最終的に
$$
\left\{
\begin{align*}
x&=1\\
y&=2\\
z&=3
\end{align*}
\right.
$$
というような結果に持っていくことです。この式を行列の積で無理やり表せば、
$$
\begin{pmatrix}
1 & 0 & 0\\
0 & 1 & 0\\
0 & 0 & 1
\end{pmatrix}
\begin{pmatrix}
x\\
y\\
z
\end{pmatrix}
=
\begin{pmatrix}
1\\
2\\
3
\end{pmatrix}
$$
つまり,左上から右下へ向かって1が並んだ行列,つまり,
単位行列をつくりだしたいわけです。
主成分の定義・主成分とは?
$$
\begin{pmatrix}
1 & 0 & 2 & 3 & 0\\
0 & 2 & 1 & 2 & 0\\
0 & 0 & 0 & 0 & 1
\end{pmatrix}
$$
このように各行に着目します。たとえば,1行目は10230です。この各行で
最も左にある0以外の数を
主成分といいます。1行目は1,2行目は2,3行目は5列目(一番左にある)1ということになります。この主成分の話をもとに簡約化行列の定義に移ります。
簡約化行列の定義
- 主成分が1
- ある行の主成分がある列は他の数は0
- 下に行くほど右側に主成分がある
- すべての成分が0の行は下のほうから順に並べる
以上を満たす行列を
簡約化行列といいます。
簡約化判定の例題
たとえば,
\begin{pmatrix}
1 & 0 & 2 & 0\\
0 & 1 & 2 & 0\\
0 & 0 & 0 & 1\\
0 & 0 & 0 & 0\\
0 & 0 & 0 & 0
\end{pmatrix}
この行列が簡約化されているか調べてみましょう。
(1)主成分が1,というのは1行1列目,2行2列目,3行4列目にある主成分が1であることを確認すればよいですね。満たしています。
(2)主成分がある列は他の成分はすべて0,というのは1列目,2列目,4列目に主成分があるのでこれを調べればよいです。満たしています。
(3)下に行くほど右に主成分がある,というのは先ほどから注目している主成分を見ればわかります。視覚的にもわかりやすい?のではないでしょうか。
(4)一番下のほうにだけ0のみの行があります,OKです。
行基本変形とは?
- (1)ある行に0以外の数をかける
- (2)ある行に他の行の定数倍をたす
- (3)2つの行を入れ替える
これらのことを言います。別にこれは全く変なことを言っていません。連立方程式を学んだ時に全部やっているはずです。
$$
\left\{
\begin{align*}
x+y&=3\\
3x-2y&=1
\end{align*}
\right.
$$
この方程式を解くことを考えてみましょう。いわゆる加減法で解くとしたら,1つめの式を2倍してみるとよいのではないでしょうか
$$
\left\{
\begin{align*}
2x+2y=6\\
3x-2y=1
\end{align*}
\right.
$$
これは行基本変形(1)(ある行に0以外の数をかける)を行ったのと同じことですね。次に$2y$がそろっているので,一つ目の式を2つめの式に足して消去します。(行基本変形(2)とおなじことです)
$$
\left\{
\begin{align*}
2x+2y=6\\
5x=1
\end{align*}
\right.
$$
ちょっと順番が気になります。$x$が下にあるので2つの式を入れ替えてあげましょう。(行基本変形(3)とおなじことです。)
$$
\left\{
\begin{align*}
5x&=1\\
2x+2y&=6
\end{align*}
\right.
$$
このように行基本変形を繰り返せば連立方程式が解けることになります。ちなみに,最後の結果は,
$$
\left\{
\begin{align*}
x&=\dfrac{1}{5}\\
y&=\dfrac{14}{5}
\end{align*}
\right.
$$
となりますが,これは行列で表せば,
$$
\begin{pmatrix}
1 & 0\\
0 & 1
\end{pmatrix}
\begin{pmatrix}
x\\
y
\end{pmatrix}
=
\begin{pmatrix}
\frac{1}{5}\\
\frac{14}{5}
\end{pmatrix}
$$
ということになります。この左辺は単位行列なわけですが...これって簡約化行列でもあります。次回の記事で書きますが,簡約化の作業で連立方程式は解くことができます。
行基本変形による簡約化
$$
\begin{pmatrix}
3 & 6 & 9\\
-3 & 3 & 1\\
0 & 3 & 2
\end{pmatrix}
$$
この行列を簡約化しましょう。簡約化するには連立方程式を解いていく感覚で行基本変形を繰り返していけばよいです。たとえば,今回でいえば1行目と2行目の一番左が符号違いで3なので,足したら消えそうですね。なので2行目に1行目を足してあげます。
$$
\begin{pmatrix}
3 & 6 & 9\\
0 & 9 & 10\\
0 & 3 & 2
\end{pmatrix}
$$
これでなんとなく1行目がそのまま1行目の主成分を持ちそうだとわかりますね。後で主成分を1にしてあげるとして今はこのままにしておきましょう。次に2列目を何とかしてやりましょう。3行目を3倍して,
$$
\begin{pmatrix}
3 & 6 & 9\\
0 & 9 & 10\\
0 & 9 & 6
\end{pmatrix}
$$
これで2行目と3行目の2列目の成分がそろいました。たとえば,2行目に3行目の(-1)倍を加えると,
$$
\begin{pmatrix}
3 & 6 & 9\\
0 & 0 & 14\\
0 & 9 & 6
\end{pmatrix}
$$
2行目はもう3列目の成分しか持ちません。つまり,この行は3行目にすべきでは?ということで,2行目と3行目を入れ替えます。
$$
\begin{pmatrix}
3 & 6 & 9\\
0 & 9 & 6\\
0 & 0 & 14
\end{pmatrix}
$$
さて,3行目はもう成分が一つしかないので主成分を1にしてやりましょう。つまり,1/14をかけます。
$$
\begin{pmatrix}
3 & 6 & 9\\
0 & 9 & 6\\
0 & 0 & 1
\end{pmatrix}
$$
さて,3行目のように1つだけ0でない数があるときには,その列にある0以外の要素はすべて消そて0にすることができます。3行目を(-6)倍して2行目に足す,また,3行目を(-9)倍して1行目に足すことで,
$$
\begin{pmatrix}
3 & 6 & 0\\
0 & 9 & 0\\
0 & 0 & 1
\end{pmatrix}
$$
さて,また,2行目は9だけが残りました。ということは1/9をかけて
$$
\begin{pmatrix}
3 & 6 & 0\\
0 & 1 & 0\\
0 & 0 & 1
\end{pmatrix}
$$
また,同じように2行目は1がひとつだけのこっているので,2列目の他の成分は消せます。
$$
\begin{pmatrix}
3 & 0 & 0\\
0 & 1 & 0\\
0 & 0 & 1
\end{pmatrix}
$$
そして,最後に1行目に1/3をかけて,
$$
\begin{pmatrix}
1 & 0 & 0\\
0 & 1 & 0\\
0 & 0 & 1
\end{pmatrix}
$$
これが簡約形です。必ずしも単位行列に戻るわけではありませんが今回は単位行列に戻ってきました。