システム工学 I 第 7 回
線形代数の
いくつかの定理
• 現代制御理論ではおもに状態方程式で表現さ れた線形時不変システムを取り扱う
• その主要な道具は線形代数
• 一般的な線形代数の入門コースより進んだ,
線形代数の知識が必要. これから 4 回の講義
では, それらを取り扱う.
• 現代制御理論では, 行列の方程式, 多項式や
べき級数で定まる行列の関数, 2 次形式 (安定
性との関係で), 行列のノルム, Jordan 標準形,
特異値分解, 一般化逆行列, 要素が多項式の
行列, 要素が有理式の行列などを取り扱う必
要があり, これらは必ずしも線形代数の入門
コースには含まれない.
• 制御工学は制御理論と制御応用に大別される.
• 制御理論の研究は数学の研究と同様に, 「定 理–証明」というスタイルを取り, 数学的に厳 密な証明が必要
• 制御応用における数学は「計算のための道具」
• 工学部の数学教育では「定理と厳密な証明は 重要ではなく, 計算技術に習熟すればよい」
という方針が取られることが多く, 工学のほ とんどの分野では (制御応用でも) これが適 切なのであるが, 制御理論では不適切である.
• この講義では, これ以降, 定理の証明をある
程度取り扱う•
数などをm × n
の配列にならべて括弧でくくっ たものを行列といい, A = (a
ij)
のような記号で あらわす.
•
行列において,
横方向の数など並びを行,
縦方向 の数などの並びを列という. A = (a
ij)
の第一の 添字が行に,
第二の添字が列に対応する.
a11 a1n
am1 amn
a21 a2n
第1行 第2行 第m行
a11 a1n
am1 amn
a12
am2
1列 2
列 n 列
•
行列の要素は典型的には実数であるが,
これ以外 に,
自然数,
整数,
有理数,
複素数,
多項式,
有理式 が要素となることがある.
• m
行n
列の実行列(
要素が実数の行列)
の全体をR
m×n であらわす.
•
要素が自然数,
整数,
有理数,
複素数のm
行n
列 の行列の全体をそれぞれN
m×n, Z
m×n, Q
m×n,
C
m×nであらわす.
•
行列が意味を持つためには,
その要素の足し算と 掛け算ができる必要がある.
厳密な定義は述べな いが,
足し算と掛け算ができる対象を環という.
• N, Z, Q, R, C
はすべて環.
その係数がある環に 含まれる多項式,
有理式の全体も環である.
•
要素が環R
に含まれるm
行n
列の行列の全体をR
m×nであらわす.
• A = (a
ij), B = (b
ij), C = (c
ij)
とする.
• 2
個の行列A
とB
の和は, A
とB
の行および列の 大きさが同じ場合にのみ定義され, A+B = (c
ij), c
ij= a
ij+ b
ij である.
• 2
個の行列A
とB
の積は, A
の列とB
の行の 大きさが同じ場合にのみ定義され, AB = (c
ij), c
ij= P
k
a
ikb
kjである.
•
すべての要素が零のm
行n
列行列を零行列とい う.
零行列を0 , 0
mnなどの記号であらわす.
零 行列は加法に関する単位元である.
•
行と列の大きさが同じ行列を正方行列という.
•
右下がりの対角線上の要素のみ1
で,
それ以外の 要素が零の正方行列を単位行列といい, I , I
nな どの記号であらわす.
単位行列は行列の積に関す る単位元である.
• A = (a
ij)
に対し,
第(i, j)
要素がa
ji である行 列を作ることができる.
これをA
の転置といい, A
T などの記号であらわす.
•
複素行列A = (a
ij)
に対し,
第(i, j)
要素がa
jiの 共役である行列をA
の共役転置といい, A
∗であ らわす.
• A = (a
ij)
をn
次正方行列とし, Σ
を{1, . . . , n}
上の置換の全体
, σ ∈ Σ, ε(σ)
をσ
の符号とする.
このとき, P
σ∈Σ
ε(σ)a
1σ(1)· · · a
nσ(n) により定ま る数をA
の行列式といい, det A
であらわす.
• n
次正方行列A = (a
ij)
の第i
行と第j
列を除い て作った行列の行列式に(−1)
i+j を乗じたものを,
この行列の第(i, j)
余因子という.
•
第(i, j)
要素が行列A
の第(j, i)
余因子である行 列をA
の余因子行列といい, adjA
であらわす.
• n
次正方行列A
に対し,
あるn
次正方行列B
が 存在し, AB = BA = I
となるとき, B
をA
の 逆行列といい, A
−1であらわす.
• A
−1= 1
det A adjA
であることが示せる. det A =
0
のとき, A
は逆行列を持たない.
• n
次正方行列A, B
に対し, det AB = det A det B
となることが示せる.
また, det(A
T) = det A
で あることも示せる.
•
ベクトル空間の公理はこの講義では既知とする.
• k
個のベクトル{v
1, . . . , v
k}
が一次独立(
線形独 立)
であるとは, c
1v
1+ · · · + c
kv
k= 0
であれば∀i, c
i= 0
となることをいう.
一次独立でないk
個 のベクトルは一次従属(
線形従属)
であるという.
• A
を正方行列としたとき, det(sI −A)
はs
の多項 式である.
また, T
を正則行列とすると, det(T
−1(sI−
A)T ) = det(sI − A)
であるから, det(sI − A)
は 相似変換A → T
−1AT
に関する不変量である.
• det(sI − A)
のs
n−1の係数に−1
をかけたものをA
のトレースといい, tr A
と書く. tr A
は, A
の 右下がりの対角線上の要素の和である.
•
ベクトル空間V
の無限集合{v
λ: λ ∈ Λ}
が一次 独立であるとは, {v
λ: λ ∈ Ω}
の任意の有限部分 集合が一次独立であることをいう.
• m
行n
列の行列A
において, 1
次独立な行をもっ とも多く選んだとき,
その数をA
の階数(
ランク)
といい
, rankA
であらわす. 1
次独立な列をもっとも多く選んでも同じ値が得られることが示せ る
.
したがって, rankA = rank(A
T)
である.
• m
行n
列の行列A
とn
次のベクトルx, m
次の ベクトルb
に対し, Ax = b
を連立一次方程式と いう.
•
連立一次方程式が解を持つための必要十分条件はrank(A b) = rankA
が成り立つことである.
•
解が一意的であるための必要十分条件はrankA =
n
であることである.
•
ベクトル空間V
の部分集合B
が基底であるとは, B
が一次独立で,
かつ∀x ∈ V , ∃N , ∃λ
1, . . . , λ
N,
∃{v
1, . . . , v
N} ⊂ B, x = λ
1v
1+ · · · + λ
Nv
N と なることをいう.
•
ベクトル空間は基底を持つ.
基底は一意的ではな いが,
その要素数(
あるいは集合の濃度)
は一意 的である.
それを次元といい, dim V
であらわす.
次元は有限のことも無限のこともある.
•
先に述べた基底を代数的基底という.
無限次元ベ クトル空間では他の基底を導入することがある.
• n
次元(n < ∞)
のベクトル空間をn
次のベクト ル空間ともいう.
• V , W
を体K
上のベクトル空間とする.
写像L :
V → W
が線形写像であるとは,
任意のv
1, v
2∈
V
と任意のα
1, α
2∈ K
に対して, L(α
1v
1+α
2v
2) =
α
1L(v
1) + α
2L(v
2)
となることをいう.
•
以下では,
ベクトル空間V (n
次), W (m
次)
と,
線 形写像L : V → W
が与えられているものとする.
• V , W
の基底V = {v
1, . . . , v
n}, W = {w
1, . . . , w
m}
を選ぶ.
このとき, ∀v
j∈ V, ∃a
ij∈ K (1 ≤ i ≤ m), L(v
i) = P
j
a
ijw
iである(1 ≤ j ≤ n).
A = (a
ij)
とし(
これを線形写像L
の表現行列と いう),
これらをまとめて書くと,
L(v
1) · · · L(v
n)
= w
1· · · w
mA
•
したがって,
基底V, W
を決めると,
線形写像L
に対応する行列A
が定まる.
図式的に言うと,
線形写像+
基底→
行列.
•
一方, V
とW
の基底V, W
およびm
行n
列の行 列A = (a
ij)
をひとつ選ぶと, L(v
i) = P
j
a
ijw
i(1 ≤ j ≤ n, 1 ≤ i ≤ n)
と定義することにより,
線形写像L
が定まる.
図式的に言うと,
行列
+
基底→
線形写像.
• V = {v
1, . . . , v
n}
とV
′= {v
′1, . . . , v
′n}
をV
の2
種類の基底とすると,
ある正方行列T
が存在し て, (v
1, . . . , v
n) = (v
′1, . . . , v
′n)T
となる.
• W = {w
1, . . . , w
n}
とW
′= {w
′1, . . . , w
′n}
をW
の2
種類の基底とすると,
ある正方行列U
が存在 して, (w
1, . . . , w
n) = (w
′1, . . . , w
′n)U
となる.
• (V, W)
に関するL
の表現行列をA, (V
′, W
′)
に 関するL
の表現行列をA
′とする.
•
表現行列A
とA
′の関係を調べる.
• (L(v
1), . . . , L(v
n))
をL((v
1, . . . , v
n))
と書く.
• L((v
′1, . . . , v
′n))T = L((v
′1, . . . , v
′n)T )
= L((v
1, . . . , v
n)) = (w
1, . . . , w
n)A
= (w
′1, . . . , w
′n)U A
•
したがって, A
′= U AT
−1.
これが,
基底の変換 に伴う表現行列の変換を表す式である.
• V , W
をベクトル空間, L : V → W
を線形写像 とする.
• L
−1( 0 ) = {x ∈ V : L(x) = 0}
はV
の部分空間 である.
これをL
の核あるいは零空間と呼ぶ.
• L(V )
はW
の部分空間である.
これをL
の像と 呼ぶ.
• V
が有限次元のとき, dim V = dim L
−1( 0 ) +
dim L(V )
となる(
次元定理).
•
行列A
を, A =
A
11· · · A
1n.. . .. . A
m1· · · A
mn
のように小 行列に区切って表現することがある.
ただし,
各 小行列A
ij は,
その上下の小行列と列の大きさが 同じで,
その左右の小行列と行の大きさが同じで なければならない.
これをブロック行列といい,
A = (A
ij)
のように表す.
• A = (A
ij), B = (B
ij)
をブロック行列とする.
各A
ij とB
ij の行および列の大きさが同じ場合 には, A + B = (A
ij+ B
ij)
のように,
行列の加 算をブロックごとに実行できる.
• A = (A
ij)
はm × n
個のブロックから成り, B = (B
jk)
はn × p
個のブロックから成るものとする. A
ikB
kjが任意のi, j, k
に対して定義できるとき には, AB = (C
ij), C
ij= P
A
ikB
kjとなる.
•
対角要素(
右下がりの対角線上の要素)
がd
1, . . . , d
n で,
他の要素が零の正方行列を対角行列といい, diag(d
1, . . . , d
n)
であらわす.
•
右下がりの対角線上にブロックA
1, . . . , A
nが並 び,
他の要素が零の行列をブロック対角行列とい い, diag(A
1, . . . , A
n)
であらわす.
各A
iは正方 行列とは限らない.
• V
を実ベクトル空間とする. V
における内積(x, y)
とは, V × V
で定義された次の性質を持つ実数値 関数である:
⊲ ∀α, β ∈ R , ∀x, y, z ∈ V , (αx + βy, z) = α(x, z) + β(y, z)
⊲ ∀x, y ∈ V , (x, y) = (y, x)
⊲ ∀x ∈ V , (x, x) ≥ 0
で, (x, x) = 0
ならx = 0
• V
を複素ベクトル空間とする. V
における内積(x, y)
とは, V × V
で定義された次の性質を持つ 複素数値関数である(
ただしz
はz
の複素共役)
:⊲ ∀α, β ∈ C , ∀x, y, z ∈ V , (αx + βy, z) = α(x, z) + β(y, z)
⊲ ∀x, y ∈ V , (x, y) = (y, x).
⊲ ∀x ∈ V , (x, x) ≥ 0
で, (x, x) = 0
ならx = 0
•
以下ではV
は実あるいは複素ベクトル空間とする.
• x ∈ V
とy ∈ V
が直交するとは, (x, y) = 0
とな ることをいう.
• V
がn
次元で, V
の基底V = {v
1, . . . , v
n}
が, (i) ∀i, (v
i, v
i) = 1,
(ii) ∀i, j, i 6= j
なら(v
i, v
j) = 0
の
2
条件を満たすとき, V
を正規直交基底という.
• U
TU = I
を満たす実正方行列を直交行列という.
• U
∗U = I
を満たす複素正方行列をユニタリ行列 という.
•
ユニタリ行列および直交行列では,
各列ベクトル がR
nあるいはC
nの正規直交基底をなす.
• A
T= A
を満たす実正方行列を対称行列という.
• A
T= −A
を満たす実正方行列を反対称行列,
交 代行列あるいは歪対称行列という.
• A
∗= A
を満たす複素正方行列をHermite
行列 という.
• A
∗= −A
を満たす複素正方行列を歪Hermite
行 列という.
•
正方行列A
に対し, T
−1AT = diag(d
1, . . . , d
n)
となる{d
1, . . . , d
n}
と正則行列T
を求めること を, A
の対角化という.
•
対角化はつねにできるとは限らないが・・・•
対称行列は直交行列によって対角化できる• Hermite
行列はユニタリ行列によって対角化できう
•
右下がりの対角線より下側の全要素が零の正方行 列を上三角行列という.
•
正方行列A
に対し, T
−1AT
が上三角行列となる ような正則行列T
と,
対応する上三角行列を求め ることを, A
の三角化という.
•
実正方行列および複素正方行列は複素行列の範囲 ではつねに三角化できるが,
実行列の範囲では三 角化できるとは限らない.
• V
を実ベクトル空間とする. f : V × V → R
が∀x, y, z ∈ V , ∀α, β ∈ R, f (αx + βy, z) = αf (x, z)+ βf (y, z), f (z, αx+βy) = αf (z, x)+
βf (z, y)
という条件を満たすとき,
これを双一次 形式あるいは双線形形式という.
•
実ベクトル空間の内積は双一次形式の一種.
• f (x, y)
が双一次形式であるとき, f (x, x)
を2
次 形式という.
• V
を複素ベクトル空間とする. f : V × V → C
が∀x, y, z ∈ V , ∀α, β ∈ C, f (αx + βy, z) = αf (x, z)+ βf (y, z), f (z, αx+βy) = αf (z, x)+
βf (z, y)
という条件を満たすとき,
これを複素双 線形形式という.
•
複素ベクトル空間の内積は複素双線形形式の一種.
• f (x, y)
が複素双線形形式であるとき, f (x, x)
をHermite
形式という.
• V
を内積が定められた実ベクトル空間, f
をV
上の双一次形式とする.
すると,
ある線形写像L : V → V
が一意的に定まり, ∀x, y, f (x, y) = (x, L(y))
となる.
•
線形写像L : V → V
が∀x, y,
(x, L(y)) = (L(x), y)
となるとき対称という•
線形写像L : V → V
が∀x, y,
(x, L(y)) = −(L(x), y)
となるとき反対称という•
双一次形式f
に対し, f
1(x, y) =
12(f (x, y) + f (y, x)), f
2(x, y) =
12(f (x, y) − f (y, x))
と定 義すると, f
1は対称, f
2は反対称で, f = f
1+ f
2 である.
すなわち,
任意の双一次形式は対称双一 次形式と反対称双一次形式の和である.
•
双一次形式から2
次形式を作ると,
上記のf
2の 影響は消えるので, 2
次形式は対称双一次形式に よって定まっていると考えてよい.
• n
次の実ベクトル空間V
に正規直交基底V
を取 り, V
に関するベクトルx
の成分を(x
1, . . . , x
n)
T,
ベクトルy
の成分を(y
1, . . . , y
n)
T とすると,
あるn
次正方行列A = (a
ij)
が取れて, ∀x, y,
f (x, y) = x
1· · · x
n
a
11· · · a
1n.. . .. . a
n1· · · a
n
y
1.. . y
n
•
とくに,
対称双一次形式ではA
は対称行列に,
反 対称双一次形式ではA
は反対称行列になる.
• 2
次形式は対称双一次形式から定まるので,
正規 直交基底を取ると, 2
次形式は対称行列A
を使っ て,
次のように書ける.
f (x, x) = x
1· · · x
n
a
11· · · a
1n.. . .. . a
n1· · · a
n
x
1.. . x
n
• A
が対称行列であれば,
直交行列によって対角化 可能であり,
その対角要素d
iはすべて実数にな る. ∀i, d
i> 0
のときこの2
次形式は正値あるい は正定値, ∀i, d
i≥ 0
のとき半正定値, ∀i, d
i< 0
のとき負定値, ∀i, d
i≤ 0
のとき半負定値という.
• A
1,A
2,A
3,A
4は行列で,
M
1= (A
1+ A
2A
3A
4)
−1およびM
2= A
−11−A
−11A
2A
4A
−11A
2+ A
−13 −1A
4A
−11 が意味を持つように定義されているものとする.
このとき, M
1= M
2.
•
これを逆行列補題という.
•
逆行列補題はフィードバックシステムの計算に使 われる道具である.
繁雑だが便利で,
証明は機械 的にできる.
• A
5= A
4A
−11A
2+ A
−31とおく.
• M
1= M
2を示すには, M
−11M
2= I ,
すなわち(A
1+ A
2A
3A
4)M
2= I
を示せばよい.
• M
2= A
−11− A
−11A
2A
−51A
4A
−11,
A
4A
−11A
2= A
5− A
−31に注意する.
= (A1+A2A3A4)(A−11−A−11A2A−51A4A−11)
=I−A2A−51A4A−11
+A2A3A4A−11−A2A3A4A−11A2A−51A4A−11
=I−A2A−51A4A−11
+A2A3A4A−11−A2A3 A5−A−31
A−51A4A−11
=I−A2A−51A4A−11
+A2A3A4A−11−A2A3A4A−11+A2A−51A4A−11
=I
A =
A
11A
12A
21A
22とし
, A
11とA
22は正方行列とする.
• A
11が正則のとき, X = A
22− A
21A
−111A
12をA
におけるA
11のSchur complement
という.
この とき, det A = det A
11det X
となる.
• A
22が正則のとき, Y = A
11− A
12A
−221A
21をA
におけるA
22のSchur complement
という.
この とき, det A = det A
22det Y
となる.
•
これらの公式を, Schur
の公式という.
•
証明は, det AB = det A det B
という正方行列 の公式を使えば,
機械的にできる.
という公式を使う. 右辺の行列の積を計算してからX =A22− A21A−111A12を代入すると左辺の行列が得られる.
• A22が正則のときには, A11 A12
A21 A22
=
I A12A−221
0 I
Y 0 0 A22
I 0 A−221A21 I
という公式を使う.右辺の行列の積を計算してからY =A11− A12A−221A21を代入すると左辺の行列が得られる.
• これらの両辺の行列式を取るとSchurの公式が得られる.
• A
11とA
22がともに正則のとき: A
110
A
21A
22 −1=
A
−1110
−A
−122A
21A
−111A
−122A
11A
120 A
22 −1=
A
−111−A
−111A
12A
−2210 A
−221(
証明は機械的にできる)
• A
11とX
がともに正則のとき,
A−1=
A−111+A−111A12X−1A21A−111 −A−111A12X−1
−X−1A21A−111 X−1
• A
22とY
がともに正則のとき,
A−1=
Y−1 −Y−1A12A−221
−A−221A21Y−1 A−221+A−221A21Y−1A12A−221
これらの証明は文献で見付けにくいので,きちんと書いておく.
た,A= 11 12
A21 A22 を3個の行列の積に分解する式を使い,さ らに先の三角行列の逆行列の公式を使うと,
A−1=
I 0 A21A−111 I
A11 0 0 X
I A−111A12
0 I
−1
=
I −A−111A12
0 I
A−111 0 0 X−1
I 0
−A21A−111 I
となり,この右辺を計算すると先に述べた形になる.
A−1= I A12A22
0 I
Y 0 0 A22
I 0 A−221A21 I
=
I 0
−A−221A21 I
Y−1 0 0 A−221
I −A12A−122
0 I
となり,この右辺を計算すると先に述べた形になる.
• 1
変数のn
次多項式p(x) = c
0+ c
1x + · · · + c
mx
m を考える(c
m6= 0).
• x
に正方行列A
を代入することを考える. p(x)
の定数項には単位行列を対応させ, x
kにはA
kを 対応させると次のようになる.
p(A) = c
0I + c
1A + · · · + c
mA
m•
先に定義したp(A)
を,
多項式p(x)
の行列A
に おける値という.
このようにすると,
変数が行列 である多項式(
この場合は関数)
が定義できる.
•
次に,
べき級数(
無限級数)
で定義された関数f (x) = P
∞k=0
c
kx
kを考える.
•
変数x
に行列A
を代入しf(A) = P
∞k=0
c
kA
kと すれば,
この和が意味を持つ限りにおいて, f (x)
に対応する行列の関数を定義できる.
•
行列の指数関数(exp A, e
A)
は,
このようにして 定義された関数の代表格.
•
指数関数の定義e
x= P
∞ k=0 1k!
x
kを使って・・・• exp[A] = e
A=
∞
X
k=0
1 k! A
k•
応用上よく出てくるのはexp[At] = e
At(
微分方 程式の解だから)
•
指数関数のべき級数展開の収束半径は無限大なの で,
行列の指数関数はつねに意味を持つ.
•
行列の三角関数も同様に定義できるが,
応用にあ らわれることは稀.
•
一般的なべき級数を使って行列の関数を定義する ときには,
収束半径に注意する必要がある.
• A
をn
次の正方行列とし, p(x) = det(xI − A)
と する. p(x)
はモニックな多項式である.
• Hamilton-Cayley
の定理の主張はシンプルで, p(A) = 0
となる,
というものである.
• p(x) = x
n+ c
1x
n−1+ · · · + c
nとするとp(A) = 0
よりA
n= −c
1A
n−1− · · · − c
nI.
•
可制御と可観測性という性質に関連して,
(B, AB , . . . , A
n−1B), (C, CA, . . . , CA
n−1)
と いう形の行列があらわれる.
• A
のべきがn−1
までで済むことの根拠がHamilton- Cayley
の定理.
• Hamilton-Cayley
の定理は通常はJordan
標準形(
次回)
を用いて証明されるが,
ここでは直接証明 する.
•Ae1= j=1a1jejより, (A−a11I,−a12I,· · ·,−a1nI)eE=0であ る. e2以降についても同様に計算し,これらをまとめると,次式が得ら れる.
A−a11I −a12I · · · −a1nI
−a21I . ..
... . ..
−an1I · · · −ann−1I A−annI
ξ=0
上式の左辺の行列をΓとおく.
次の正方行列と解釈し,この解釈のもとで の余因子行列を作り,これ を∆とおく. 詳しく書くと,Γ= (Aij) (1≤i, j≤n,Aijはn次の 正方行列)その第(i, j)行(ブロック)を除いて作った行列を(Akilj)と (1≤i, j≤n−1とし, Σn−1を{1, . . . , n−1}の置換としたとき,∆の 第(j, i)要素∆jiとすると, ∆ji=P
σ∈Σn−1ε(σ)Ak1lσ(1)· · ·Akn−1lσ(n−1) である.
•Γξ =0の両辺に∆を左から掛けると, DAe =0となる. さらに, DA= diag(D1, . . . ,Dn) (ブロック対角行列)で,すべてのiに対し,
Di=p(A)である. よって,∀i, p(A)ei=0であり,したがってp(A) =0
である.
•伊理,線形代数汎論,朝倉書店, 2009
•S. Skogestad and I. Postlethwaite, Multivariable Feedback Control, John Wiley & Sons, 1996
•D. S. Bernstein, Matrix Mathematics, 2/e, Princeton University Press, 2009
•川久保,線形代数学,日本評論社, 1999
•斎藤,線形代数入門,東京大学出版会, 1966
•兒玉,須田,システム制御のためのマトリクス理論,計測自動制御学会, 1978
•須田,線形システム理論,朝倉書店, 1993