行列3つの積の計算方法

行列

行列の掛け算って定義がちょっと複雑でややこしいです。

2個の行列の掛け算でも複雑に見える行列の積、3個になったらどうなるのか?

結論から先に書くと、3個の行列の積は、まず、左の2個の積をもとめて、その結果と右側の行列を掛けます。

行列の掛け算は、行数と列数の値によっては計算できないこともあるし、かける順序を入れ替えることもできない(交換の法則は使えない)ので普通の計算と同じようにできない部分も多いのですが、3個でも4個でも続けて掛けることができます。

3つの行列の積

二つの行列\(A\)と\(B\)があったとします。

この二つの行列の積を\(AB\)と書きますが、この計算は、左の行列\(A\)から行をもってきて、右の行列\(B\)からは列を持ってきて、それぞれ対応する成分を掛け合わせその合計を計算します。

行の取り方、列の取り方の組み合わせの分だけ計算します。

3個の行列\(A\),\(B\),\(C\)の積を\(ABC\)とかくと、この積の計算は、まず\(AB\)を計算し、その結果と\(C\)を掛けます。

式でかくと3個の行列の積は\((AB)C\)となります。

ただ、行列の掛け算は結合法則が成立しており、右かがから掛け算していって、\(A(BC)\)と計算しても実は同じ答えがでてくるのです。

2行2列の行列の例で説明

代表的な2行2列の行列3個を掛けてみます。

\[\displaystyle A=\begin{pmatrix}a_{11}&a_{12}\\a_{21}&a_{22}\end{pmatrix}\]

\[\displaystyle B=\begin{pmatrix}b_{11}&b_{12}\\b_{21}&b_{22}\end{pmatrix}\]

\[\displaystyle C=\begin{pmatrix}c_{11}&c_{12}\\c_{21}&c_{22}\end{pmatrix}\]

とします。

この場合、

\[\displaystyle ABC\\=\begin{pmatrix}a_{11}&a_{12}\\a_{21}&a_{22}\end{pmatrix}\begin{pmatrix}b_{11}&b_{12}\\b_{21}&b_{22}\end{pmatrix}\begin{pmatrix}c_{11}&c_{12}\\c_{21}&c_{22}\end{pmatrix}\]となりますが、まず\(AB\)を計算します。

\[\displaystyle AB\\=\begin{pmatrix}a_{11}&a_{12}\\a_{21}&a_{22}\end{pmatrix}\begin{pmatrix}b_{11}&b_{12}\\b_{21}&b_{22}\end{pmatrix}\]

\[\displaystyle =\begin{pmatrix}a_{11}b_{11}+a_{12}b_{21} & a_{11}b_{12}+a_{12}b_{22}\\a_{21}b_{11}+a_{22}b_{21} & a_{21}b_{12}+a_{22}b_{22}\end{pmatrix}\]

となります。

よって、これに右から\(C\)を掛けると、\[\displaystyle ABC\\=\begin{pmatrix} a_{11}b_{11}+a_{12}b_{21} & a_{11}b_{12}+a_{12}b_{22}\\ a_{21}b_{11}+a_{22}b_{21} & a_{21}b_{12}+a_{22}b_{22} \end{pmatrix} \begin{pmatrix}c_{11}&c_{12}\\c_{21}&c_{22}\end{pmatrix} \]

\[\displaystyle = \begin{pmatrix} (a_{11}b_{11}+a_{12}b_{21})c_{11} + (a_{11}b_{12}+a_{12}b_{22})c_{21} &(a_{11}b_{11}+a_{12}b_{21})c_{12} + (a_{11}b_{12}+a_{12}b_{22})c_{22}\\ (a_{21}b_{11}+a_{22}b_{21})c_{11} + (a_{21}b_{12}+a_{22}b_{22})c_{21} &(a_{21}b_{21}+a_{12}b_{21})c_{12} + (a_{21}b_{12}+a_{22}b_{22})c_{22}\end{pmatrix} \]

\[\displaystyle = \begin{pmatrix} a_{11}b_{11}c_{11}+a_{12}b_{21}c_{11} + a_{11}b_{12}c_{21}+a_{12}b_{22}c_{21} &a_{11}b_{11}c_{12}+a_{12}b_{21}c_{12} + a_{11}b_{12}c_{22}+a_{12}b_{22}c_{22}\\ a_{21}b_{11}c_{11}+a_{22}b_{21}c_{11} + a_{21}b_{12}c_{21}+a_{22}b_{22}c_{21} &a_{21}b_{21}c_{12}+a_{12}b_{21}c_{12} + a_{21}b_{12}c_{22}+a_{22}b_{22}c_{22}\end{pmatrix} \]

となります。

このように行列の掛け算は成分を書くと、めちゃくちゃ長くなります。

ここで成分の添え字に規則があることに注意します。

上の計算結果から、\(ABC\)の1行1列の成分を見ると、\[a_{11}b_{11}c_{11}+a_{12}b_{21}c_{11} \\+ a_{11}b_{12}c_{21}+a_{12}b_{22}c_{21}\]となっています。添え字を除いてみると、どれも\(a,b,c\)の順に掛けた積でそれが4つ足し合わさっています。

添え字だけをみてください、4つの項はどれも、 \(a_{1〇}\ b_{〇△}\ c_{△1}\)の形をしています。 ここで、\(〇,△\)は\(1,2\)のどれかです。

すなわち、添え字だけみると、1行1列の成分にある4つの項の添え字はどれも1から始まって1で終わっています。

次に、1行2列の成分を構成している項をみると、

\(a_{1〇}\ b_{〇△}\ c_{△2}\)

の形をしています。

添え字は\(1\)で始まり、\(2\)で終わっています。

同様に、(2,1)成分、(2,2)成分は、

\(a_{2〇}\ b_{〇△}\ c_{△1}\)

\(a_{2〇}\ b_{〇△}\ c_{△2}\)

の形の和です。

無理やり行列の表示形式でこれらの事実を書いてみると、 \[\displaystyle ABC = \begin{pmatrix} \sum a_{1〇}\ b_{〇△}\ c_{△1} & \sum a_{1〇}\ b_{〇△}\ c_{△2}\\ \sum a_{2〇}\ b_{〇△}\ c_{△1} & \sum a_{2〇}\ b_{〇△}\ c_{△2}\end{pmatrix} \] となります。

2行2列の行列の場合で説明しましたが、これが3個の行列の積の答えです。

3個ともなると、行列の積は複雑です。

実際に計算する場合は、上記のように2個で掛けるのを繰り返して計算します。

\(BC\)を先に計算してから\(A(BC)\)を計算しても同じ結果になります。

一般的に3個の行列の積の成分

3個の行列の積\(ABC\)の\(i\)行\(j\)列成分は、

\(\displaystyle \sum_{〇,△} a_{i〇}\ b_{〇△}\ c_{△j}\)

となります。

\(〇,△\)はすべての添え字を動きます(2重ループ構造になっています)。

式で成分を書いてみましたが、自分で実際に手計算して添え字の規則を確認するとよくわかります。

タイトルとURLをコピーしました