玄関雑学の部屋雑学コーナーベクトルと行列

7.逆行列

1) 逆行列の定義

あるn次の正方行列に別のn次の正方行列を掛けた結果が、









a11


ai1


an1






a1i


aii


ani






a1n


ain


ann








ABn=[1in]=





1

0

0




0

1

0




0

0

1






  …… (7.1)

と単位行列nになる時、この行列のことを「行列の逆行列(inverse matrix)」といい、「-1」と書きます。 逆行列が存在する行列はn次元ベクトル空間の基底を成分ベクトルとした正方行列で、このような行列のことを「正則な行列(regular matrix)」といいます。 正則ではない行列は「特異な行列(singular matrix)」といい、成分ベクトルが基底ではない行列、つまり成分ベクトルの間に一次従属関係がある行列になります。

1次の正方行列すなわちスカラーの場合、逆行列は、

=[a]
-1=[1]
-1=[1/a] (a≠0)

と逆数になります。 つまり逆行列は逆数を拡張したものであり、行列の積の逆演算に相当します。 そして逆行列を定義することによって、行列の世界で和・差・積・除の四則演算が揃ったことになります。 逆行列について、次のようなことが成り立ちます。 (注1)

2) 逆行列と直交変換

正規直交基底を列ベクトルとする正規直交行列と、その転置行列つまり正規直交基底を行ベクトルとする正規直交行列については、

=[1in]=







z11


zi1


zn1






z1i


zii


zni






z1n


zin


znn








'=









1'



i'



n'




















z11



z1i



z1n








zi1



zii



zin








zn1



zni



znn










'









1'



i'



n'










1in
  =









1'1



i'1



n'1








1'i



i'i



n'i








1'n



i'n



n'n




















1



0



0








0



1



0








0



0



1










n

=[']-1
'=-1

とお互いに逆行列の関係にあり、第6章の直交変換の式(6.5)と(6.6)は、

'-1
Zy=[']-1

と、お互いに変換/逆変換の関係にあります。 つまりあるベクトルに逆行列を掛けるという作業は、ベクトルの逆変換を行っていることに相当するわけです。

例えば2次元ベクトル空間R2つまり普通の平面で、基本的な座標軸をθだけ回転した時の座標軸を表す正規直交基底は、

1


cosθ
sinθ



 2


-sinθ
cosθ



121'1=cos2θ+sin2θ=1
222'2=sin2θ+cos2θ=1
1'2=-cosθ・sinθ+sinθ・cosθ=0

となりますから、ベクトルをこの回転座標系から見た時のベクトルは、





x1

x2




'=



1'

2'








cosθ

-sinθ
sinθ

cosθ








y1

y2




'



x1・cosθ+x2・sinθ

-x1・sinθ+x2・cosθ




  …… (7.2)

2=y12+y22
   =(x1・cosθ+x2・sinθ)2+(-x1・sinθ+x2・cosθ)2
   =x12・cos2θ+2・x1・x2・cosθ・sinθ+x22・sin2θ
    +x12・sin2θ−2・x1・x2・sinθ・cosθ+x22・cos2θ
   =x12(cos2θ+sin2θ)+x22(cos2θ+sin2θ)
   =x12+x22=‖2  (ベクトルの大きさは不変)

図11直交変換と逆変換

となります。 この直交変換はベクトルを原点のまわりに−θだけ回転したことに相当します。 正規直交行列'の逆行列は元の正規直交行列ですから、逆変換は次のようになります。 この逆変換はベクトルを原点のまわりにθだけ回転したことに相当します。

']-1=[1 2]=


cosθ
sinθ
-sinθ
cosθ







x1

x2




Zy=y11+y22



y1・cosθ−y2・sinθ

y1・sinθ+y2・cosθ




  …… (7.3)

x1、x2とy1、y2の関係が(7.3)式のようになることは、直角三角形を利用して幾何学的に証明することができますので、興味のある方は証明してみてください。

ちなみにn次の正方行列が、

''

を満足する時、「正規行列(normal matrix)」といいます。 例えば、




1
1
-1
1



  '=


1
-1
1
1



とすると、
'


2
0
0
2



  '=


2
0
0
2



となり、は正規行列になります。 正規直交行列は、

'-1n-1'

となり、正規行列でもあります。 例えば




cosθ
sinθ
-sinθ
cosθ



  '=


cosθ
-sinθ
sinθ
cosθ



-1
'


1
0
0
1



  '=


1
0
0
1



となります。 また対称行列は元の行列と転置行列が等しいので、必ず正規行列になります。 (注2)

3) 掃き出し法

逆行列を求めるには、普通は「掃き出し法(sweep out method)」または「ガウスの消去法(Gaussian elimination)」と呼ばれる次のような方法を用います。

  1. 逆行列を求めたい行列の横に単位行列nを並べる。
    n]=






    x11

    x21


    xn1
    x12

    x22


    xn2





    x1n

    x2n


    xnn





    1

    0


    0
    0

    1


    0





    0

    0


    1







      …… (7.4)
  2. 第1行をx11で割る。







    1

    x21


    xn1
    x12/x11

    x22


    xn2





    x1n/x11

    x2n


    xnn





    1/x11

    0


    0
    0

    1


    0





    0

    0


    1







  3. 第1行をx21倍して第2行から引く。







    1

    0


    xn1
    x12/x11

    x22-x21x12/x11


    xn2





    x1n/x11

    x2n-x21x1n/x11


    xnn





    1/x11

    0-x21/x11


    0
    0

    1


    0





    0

    0


    1







  4. 同様に、第1行をxi1倍して第i行から引くという操作を第n行まで繰り返す。







    1

    0


    0
    x12/x11

    x22-x21x12/x11


    xn2-xn1x12/x11





    x1n/x11

    x2n-x21x1n/x11


    xnn-xn1x1n/x11





    1/x11

    0-x21/x11


    0-xn1/x11
    0

    1


    0





    0

    0


    1















    1

    0



    0
    x12(1)

    x22(1)



    xn2(1)






    x1n(1)

    x2n(1)



    xnn(1)






    x11(-1)

    x21(-1)



    xn1(-1)
    0

    1



    0






    0

    0



    1








     と置きなおす
    2〜4の操作を「x11を軸(pivot)にして掃き出す」という。
  5. 以下同様にして、新しく更新されたx22(1)〜xnn(1)を軸にして掃き出しを繰り返すと、最終的には右側の単位行列がの逆行列に変わる。








    1

    0



    0
    0

    1



    0






    0

    0



    1






    x11(-1)

    x21(-1)



    xn1(-1)
    x12(-1)

    x22(-1)



    xn2(-1)






    x1n(-1)

    x2n(-1)



    xnn(-1)








    =[n-1   …… (7.5)

言葉で説明しますと非常にややこしく聞こえますが、実際にやってみますと思ったほど難しくはありませんので(といっても、決して簡単とは申しませんが)、例を用いて実際に計算してみましょう。





3
4
8
1
3
4
1
-1
1




 とすると
3]=



3
4
8
1
3
4
1
-1
1


1
0
0
0
1
0
0
0
1








1
4
8
1/3
3
4
1/3
-1
1


1/3
0
0
0
1
0
0
0
1




 … 第1行を3で割る




1
0
0
1/3
5/3
4/3
1/3
-7/3
-5/3


1/3
-4/3
-8/3
0
1
0
0
0
1




 … 第1行で掃き出す




1
0
0
1/3
1
4/3
1/3
-7/5
-5/3


1/3
-4/5
-8/3
0
3/5
0
0
0
1




 … 第2行を5/3で割る




1
0
0
0
1
0
4/5
-7/5
1/5


3/5
-4/5
-24/15
-1/5
3/5
-4/5
0
0
1




 … 第2行で掃き出す




1
0
0
0
1
0
4/5
-7/5
1


3/5
-4/5
-8
-1/5
3/5
-4
0
0
5




 … 第3行を1/5で割る




1
0
0
0
1
0
0
0
1


7
-12
-8
3
-5
-4
-4
7
5




 … 第3行で掃き出す
-1



7
-12
-8
3
-5
-4
-4
7
5




検算のため元の行列に掛けてみますと、

-1



3
4
8
1
3
4
1
-1
1








7
-12
-8
3
-5
-4
-4
7
5








21-12-8
28-36+8
56-48-8
9-5-4
12-15+4
24-20-4
-12+7+5
-16+21-5
-32+28+5








1
0
0
0
1
0
0
0
1




と、確かに単位行列となります。 普通はコンピュータを利用して計算しますが、実際に手で計算してみますと何となく感覚的に理解できた気になりますので、ぜひ実際に計算してみてください。


(注1) ある被演算子に関して四則演算が自由に行えるような状態を、「四則に対して閉じている」といいます。 数の世界は、演算に対して閉じるような新しい数を定義することによって進化してきました。

自然数は足し算と掛け算に対して閉じています。 しかし掛け算によって記述された方程式、

a・x=b  a、b:自然数
x=b÷a=b/a=a-1・b

の解b/aは、自然数の世界では常に存在するとは限りません。 つまり、自然数は掛け算の逆演算である除算に対して閉じていないのです。 そこで除算に対して閉じるように逆数a-1を定義し、分数を作って数の範囲を広げました。 同様にして、

方程式 x+a=0  (a:正の数)
解 x=-a

と、正の数は加算の逆演算である減算に対して閉じていないので、閉じるように負数を定義して数の範囲を広げました。 その結果、数は有理数まで広がり、四則演算に対して閉じることになりました。 このような集合を「体」といいます。 さらに、

方程式 xn=a  (a:有理数)
解 x=n√a

と、有理数はベキ乗の逆演算に対して閉じていないので、閉じるように無理数を定義して数の範囲を広げました。 そして連続性のために超越数も加え、数は実数まで広がりました。 さらに、

方程式 x2=-a  (a:正の実数)
解 x=√a・i  i=√(-1)

と、実数は負数のベキ乗の逆演算に対して閉じていないので、閉じるように虚数を定義して数の範囲を広げました。 この結果、数は複素数まで広がり数の体系が完成しました。

逆行列は常に存在するとは限りませんので行列は四則に対して閉じていませんが、特殊な一般化逆行列を定義し、行列の範囲を広げることによって四則に対してほぼ閉じるようにできます。

(注2) ややこしいことに、正規直交行列は正規行列であると同時に直交行列でもありますが、正規行列であると同時に直交行列であっても正規直交行列になるとは限りません。 例えば正規行列の例としてあげた、




1
1
-1
1



=[1 1
1‖=√2  ‖2‖=√2  1'2=0

は正規行列であると同時に直交行列でもありますが、正規直交行列ではありません。 このあたりの命名法の不明確さは第6章の(注1)で述べた直交行列−直交変換の命名法の不明確さと関連していて、はなはだ混乱しやすいので注意が必要です。