縮小版 - 立命館大学

正規方程式と射影行列
解が無い連立一次方程式
行列表現
.



[ ]
1
0
1
x
 2 −1 
= 6 
y
−1 1
−2
.
.
.
..

.
数値計算:射影
平井 慎一
⇓
立命館大学 ロボティクス学科






1
0
1
 2  x +  −1  y =  6 
−1
1
−2
を満たす x, y が存在しない
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
1 / 57
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
5 / 57
正規方程式と射影行列
目次
解が無い連立一次方程式
講義の流れ
b
.
. .1 正規方程式と射影行列
a2
.
. 2. 正規直交系への射影
a1
.
. .3 グラム・シュミットの直交化
.
. .4 QR 分解とその応用
係数行列の第 1 列と第 2 列のベクトル




1
0
a1 =  2  ,
a2 =  −1 
−1
1
.
. .5 まとめ
=⇒ 三次元空間内のベクトル
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
2 / 57
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
6 / 57
正規方程式と射影行列
講義の目標
解が無い連立一次方程式
講義の目標
b
.
講義の内容
..
射影行列
QR
. 分解
..
.
.
a1
.
.
一次結合
.
.
講義の目標
..
射影行列を理解する
QR
. 分解を用いて射影行列を計算する
..
.
a2




1
0
a1 x + a2 y =  2  x +  −1  y
−1
1
=⇒ 二つのベクトル a1 と a2 を含む平面内
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
3 / 57
平井 慎一 (立命館大学 ロボティクス学科)
正規方程式と射影行列
数値計算:射影
7 / 57
正規方程式と射影行列
解が無い連立一次方程式
解が無い連立一次方程式
b
変数の個数が 2,式の数が 3 である連立一次方程式

1
 1x +0y =
2x −1y =
6

−1x +1y = −2
a2
a1
⇓
定数ベクトル
解を持たない


1
b= 6 
−2
=⇒ 平面上にない
=⇒ 左辺と右辺が等しくなる x, y は存在しない =⇒ 解が無い
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
4 / 57
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
8 / 57
正規方程式と射影行列
正規方程式と射影行列
誤差最小解
係数行列


[

1
0
A =  a1 a2  =  2 −1 
−1 1
x=
[
[
]
x
y
0 −1 1
]




 b − Ax  = 0
 b − Ax  = 0
.
誤差が最小になるための条件
..


[
]
[ ]
1 2 −1 
0
b − Ax  =
0 −1 1
0
.
..
連立一次方程式
Ax = b
平井 慎一 (立命館大学 ロボティクス学科)
1 2 −1
]
数値計算:射影
9 / 57
平井 慎一 (立命館大学 ロボティクス学科)
.
.
数値計算:射影
13 / 57
正規方程式と射影行列
正規方程式と射影行列
誤差最小解
誤差最小解
b - Ax
b


1
0
A =  2 −1  ,
−1 1
a2
p = Ax
a1
AT =
[
1 2 −1
0 −1 1
]
.
誤差が最小になるための条件
..
誤差が最小となる解 =⇒
定数ベクトル b から列ベクトル a1 ,a2 が定める平面への垂線
AT (b − Ax) = 0
.
..
垂線の足
.
.
.
変数ベクトル

.
誤差最小解
p = a1 x + a2 y = Ax
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
10 / 57
平井 慎一 (立命館大学 ロボティクス学科)
.
正規方程式
..
AT Ax = AT b
.
..
a2
p = Ax
a1
.
AT A =
[
1 2 −1
0 −1 1
垂線に沿うベクトル
.

[
]
1
0
6 −3
 2 −1  =
−3 2
−1 1
=⇒ 正定対称行列
b − Ax
ベクトル b − Ax が平面に直交
a1 ⊥ b − Ax,
平井 慎一 (立命館大学 ロボティクス学科)
行列 A がフルランク =⇒ AT A は正定対称行列
=⇒ 正規方程式は必ず解くことができる
a2 ⊥ b − Ax
数値計算:射影
11 / 57
平井 慎一 (立命館大学 ロボティクス学科)
正規方程式と射影行列
数値計算:射影
15 / 57
正規方程式と射影行列
誤差最小解
射影行列


1
 2  ⊥ b − Ax,
−1


 b − Ax  = 0,
平井 慎一 (立命館大学 ロボティクス学科)
正規方程式 AT Ax = AT b を解く
a2 ⊥ b − Ax
x = (AT A)−1 AT b
⇓


0
 −1  ⊥ b − Ax
1
⇓
[
0 −1 1
数値計算:射影
]

このとき
p = Ax = A(AT A)−1 AT b
.
射影行列
..

.
..
 b − Ax  = 0
12 / 57
平井 慎一 (立命館大学 ロボティクス学科)
.
A(AT A)−1 AT
数値計算:射影
.
.
a1 ⊥ b − Ax,
]
]

.
b - Ax
b
1 2 −1
14 / 57
誤差最小解
誤差最小解
[
数値計算:射影
正規方程式と射影行列
正規方程式と射影行列
16 / 57
正規方程式と射影行列
正規方程式と射影行列
射影行列
射影行列
例 正則行列


2 1 0
A= 1 2 0 
0 0 3
b
射影行列 P = A(AT A)−1 AT :
任意のベクトル b を係数行列 A の列ベクトルから成る空間に写像
P×
b =⇒ Pb
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
(注意 行列 A は正則なので (AT A)−1 = A−1 (AT )−1 )


1 0 0
T
−1 T
−1
T −1 T
A(A A) A = AA (A ) A = I =  0 1 0 
0 0 1
の射影行列
Ax
Pb
17 / 57
全空間への射影 ≡ 恒等変換
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
21 / 57
正規方程式と射影行列
正規方程式と射影行列
射影行列の性質
.
列の交換
..


1 0
A= 0 1 
0 0
の射影行列

.
A=

x-y 平面への射影
A=
]
[
B=
,
⇓
a2 a1 a3
]
18 / 57
[
a1 a2 a3
]
B=
,
⇓
[
a1 + 5a2 a2 a3
.
.
]
行列 A の射影行列 = 行列 B の射影行列
.
..
数値計算:射影
a1 a2 a3
行列 A の射影行列 = 行列 B の射影行列
.
..
.
列の定数 (非零) 倍の加算
..
1 0 0
A(AT A)−1 AT =  0 1 0 
0 0 0
平井 慎一 (立命館大学 ロボティクス学科)
[
平井 慎一 (立命館大学 ロボティクス学科)
.
例 行列
数値計算:射影
.
.
射影行列
22 / 57
正規方程式と射影行列
正規方程式と射影行列
射影行列の性質
.
列の定数倍
..
例 行列


2 1
A= 1 2 
0 0
の射影行列

.
A=

.
..
1 0 0
A(AT A)−1 AT =  0 1 0 
0 0 0
[
a1 a2 a3
]
B=
,
⇓
[
6a1 a2 a3
]
行列 A の射影行列 = 行列 B の射影行列
.
.
射影行列
x-y 平面への射影
射影行列は列の基本変換に関して不変
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
19 / 57
平井 慎一 (立命館大学 ロボティクス学科)
正規方程式と射影行列
射影行列
23 / 57
射影行列の性質
例 単位ベクトル q から成る行列
 
の射影行列
数値計算:射影
正規方程式と射影行列
B =
A(AT A)−1 AT = qqT
方向ベクトル q で定められる直線への射影
]
=
=
=
=
(bTq)q = (qqT)b
数値計算:射影
]

行列 B の射影行列 = B(B T B)−1 B T
b
平井 慎一 (立命館大学 ロボティクス学科)
a2 a1 a3
[
(注意 AT = qT なので AT A = qT q = 1)
q
[

0 1 0
a1 a2 a3  1 0 0 
=
0 0 1
= AR (正方行列 R は正則)
A= q 
20 / 57
平井 慎一 (立命館大学 ロボティクス学科)
(AR)(R T AT AR)−1 (R T AT )
ARR −1 (AT A)−1 (R T )−1 R T AT
A(AT A)−1 AT
行列 A の射影行列
数値計算:射影
24 / 57
正規方程式と射影行列
正規方程式と射影行列
射影行列の性質
射影行列の性質


1 −2
 2 −4  の射影行列
−1 2




1 0
1



2 0 の射影行列 =
2  の射影行列
=
−1 0
−1
√ 

1/√6
=  2/ √6  の射影行列
−1/ 6


1
2 −1
1
2
4 −2 
=
6
−1 −2 1
]
a1 + 5a2 a2 a3


[
] 1 0 0
a1 a2 a3  5 1 0 
0 0 1
AR (正方行列 R は正則)
[
]
6a1 a2 a3


[
] 6 0 0
a1 a2 a3  0 1 0 
0 0 1
AR (正方行列 R は正則)
[
B =
=
=
B =
=
=
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
25 / 57
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
29 / 57
正規直交系への射影
正規方程式と射影行列
正規直交系
射影行列の性質


0
5
 1 −3  の射影行列
−2 6


5
0
=  −3 1  の射影行列 (1 列と 2 列を交換)
6 −2


5 0
=  0 1  の射影行列 (1 列に 2 列の 3 倍を加算)
0 −2


1 0
=  0 1  の射影行列 (1 列を (1/5) 倍)
0 −2
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
.
正規直交系
..
.
ベクトルの組が正規直交系
⇓
26 / 57
.
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
.
正規:各ベクトルの大きさが 1 である
直交:ベクトルがたがいに直交している
.
..
30 / 57
正規直交系への射影
正規方程式と射影行列
正規直交系
射影行列の性質
ベクトル


1
0√
√
=  0 1/ √5  の射影行列 (2 列を (1/ 5) 倍)
0 −2/ 5
 


0√
1 [
[
]
√
√ ]
=  0  1 0 0 +  1/ √5  0 1/ 5 −2/ 5
0
−2/ 5


1
0
0
=  0 1/5 −2/5 
0 −2/5 4/5
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
の内積


ax
a =  ay  ,
az
a · b = ax bx + ay by + az bz =


bx
b =  by 
bz
[
ax ay az
]


bx
 by  = aT b
bz
ベクトル a と b が直交 =⇒ aT b = 0
ベクトル a の大きさが 1 =⇒ ∥ a ∥ = 1
=⇒ ∥ a ∥2 = a · a = aT a = 1
27 / 57
平井 慎一 (立命館大学 ロボティクス学科)
正規方程式と射影行列
数値計算:射影
31 / 57
正規直交系への射影
射影行列の性質
正規直交系
二つのベクトル q1 , q2 が正規直交系
例 行列


[
6 −12
−12 24
正規 ∥ q1 ∥= 1, ∥ q2 ∥= 1
直交 q1 ⊥ q2
1 −2
A =  2 −4 
−1 2
の射影行列
T
A A=
行列 AT A は正則でない
平井 慎一 (立命館大学 ロボティクス学科)
⇓
T
正規 qT
1 q1 = 1, q2 q2 = 1
T
直交 qT
1 q2 = q2 q1 = 0
⇓
]
qT
1 q1 = 1,
qT
2 q1 = 0,
=⇒ 逆行列 (AT A)−1 が存在しない
=⇒ 定義式では計算できない
数値計算:射影
28 / 57
平井 慎一 (立命館大学 ロボティクス学科)
qT
1 q2 = 0,
qT
2 q2 = 1
数値計算:射影
32 / 57
グラム・シュミットの直交化
正規直交系への射影
グラム・シュミットの直交化
正規直交系
三つのベクトル q1 , q2 , q3 が正規直交系
正規 ∥ q1 ∥= 1, ∥ q2 ∥= 1, ∥ q3 ∥= 1
直交 q1 ⊥ q2 ,
q1 ⊥ q3 ,
q2 ⊥ q3
.
グラム・シュミットの直交化
..
ベクトルの組 a1 , a2 , a3
⇓
qT
1 q1 = 1,
qT
2 q1 = 0,
qT
3 q1 = 0,
qT
1 q2 = 0,
qT
2 q2 = 1,
qT
3 q2 = 0,
qT
1 q3 = 0,
qT
2 q3 = 0,
qT
3 q3 = 1
.
⇓
正規直交系 q1 , q2 , q3
.
ベクトル
a1 , a2 , a3 が定める空間 ≡ ベクトル q1 , q2 , q3 が定める空間
.
..
.
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
33 / 57
平井 慎一 (立命館大学 ロボティクス学科)
正規直交系を成す二つのベクトル q1 , q2 を列ベクトルとする行列 A


A =  a1 a2 a3 
ベクトル a1 =⇒ 正規直交系 q1
a1 が定める空間 ≡ q1 が定める空間
正規方程式の係数行列 AT A


[
[ T
]
] [
]
qT
q1 q1 qT
1 0
T
1
1 q2

q1 q2  =
A A=
=
T
T
T
q2
q2 q1 q2 q2
0 1
ベクトル a1 , a2 =⇒ 正規直交系 q1 , q2
a1 , a2 が定める空間 ≡ q1 , q2 が定める空間
ベクトル a1 , a2 , a3 =⇒ 正規直交系 q1 , q2 , q3
a1 , a2 , a3 が定める空間 ≡ q1 , q2 , q3 が定める空間
A は直交行列
数値計算:射影


A =  q1 q2 
平井 慎一 (立命館大学 ロボティクス学科)
34 / 57
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
38 / 57
グラム・シュミットの直交化
正規直交系への射影
グラム・シュミットの直交化
正規直交系への射影
a2
射影行列


A(A A) A =  q1 q2 
T
37 / 57
グラム・シュミットの直交化
正規直交系への射影
=⇒
数値計算:射影
グラム・シュミットの直交化
正規直交系への射影
−1
T
[
qT
1
qT
2
]
b2
=
q1 qT
1
+
q2 qT
2
q2
ベクトル b の射影
T
a1
b1
q1
−1
T
A(A A) A b =
=
(q1 qT
1)b
T
(bq1 ) q1
+
+
(q2 qT
2)b
T
(bq2 ) q2
ベクトル a1 =⇒ 正規直交系 q1
b1 = a 1 ,
b1
q1 =
∥ b1 ∥
右辺の第 1 項:ベクトル b の単位ベクトル q1 への射影
右辺の第 2 項:ベクトル b の単位ベクトル q2 への射影
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
35 / 57
正規直交系への射影
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
39 / 57
グラム・シュミットの直交化
正規直交系への射影
グラム・シュミットの直交化
a2
.
b2
.
a1
b1
.
.
正規直交系への射影
..
行列 A が直交行列
行列
A の各列ベクトルへの射影を独立に計算し加算
.
..
q2
各列ベクトルへの射影
q1
ベクトル a1 , a2 =⇒ 正規直交系 q1 , q2
b
q
b2 = a2 − (aT
2 q1 )q1 ,
b2
q2 =
∥ b2 ∥
(bTq)q = (qqT)b
逆行列を計算する必要がない
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
36 / 57
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
40 / 57
QR 分解とその応用
グラム・シュミットの直交化
QR 分解
グラム・シュミットの直交化
a2
ベクトル a1 , a2 , a3 を正規直交系 q1 , q2 , q3 を用いて表す
b2
a1 =∥ b1 ∥ q1
a2 =∥ b2 ∥ q2 + (aT
2 q1 )q1
T
a3 =∥ b3 ∥ q3 + (aT
3 q1 )q1 + (a3 q2 )q2
a1
b1
q2
q1
⇓

b2 = a2 − (aT
2 q1 )q1
(aT
2 q1 )q1 :
右辺の第 2 項
ベクトル a2 を単位ベクトル q1 が定める直線へ射影


 a1 a2 a3  =  q1 q2
⇓
A = QR


∥ b1 ∥ aT
aT
2 q1
3 q1

q3   0
∥ b2 ∥ aT
3 q2
0
0
∥ b3 ∥
b2 ⊥ q1
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
41 / 57
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
44 / 57
QR 分解とその応用
グラム・シュミットの直交化
QR 分解
グラム・シュミットの直交化
b3
ベクトル a1 , a2 , a3 を正規直交系 q1 , q2 , q3 を用いて表す
a3
a1 =∥ b1 ∥ q1
a2 =∥ b2 ∥ q2 + (aT
2 q1 )q1
T
a3 =∥ b3 ∥ q3 + (aT
3 q1 )q1 + (a3 q2 )q2
q3
q2
q1
⇓

ベクトル a1 , a2 , a3 =⇒ 正規直交系 q1 , q2 , q3
(aT
3 q1 )q1
b3 = a 3 −
b3
q3 =
∥ b3 ∥
平井 慎一 (立命館大学 ロボティクス学科)
−
(aT
3 q2 )q2 ,


 a1 a2 a3  =  q1 q2
A = QR
数値計算:射影
42 / 57
平井 慎一 (立命館大学 ロボティクス学科)


∥ b1 ∥ aT
aT
2 q1
3 q1
T
q3   0
∥ b2 ∥ a3 q2 
0
0
∥ b3 ∥
数値計算:射影
44 / 57
QR 分解とその応用
グラム・シュミットの直交化
QR 分解
グラム・シュミットの直交化
b3
ベクトル a1 , a2 , a3 を正規直交系 q1 , q2 , q3 を用いて表す
a3
a1 =∥ b1 ∥ q1
a2 =∥ b2 ∥ q2 + (aT
2 q1 )q1
T
a3 =∥ b3 ∥ q3 + (aT
3 q1 )q1 + (a3 q2 )q2
q3
q2
q1
⇓
b3 = a3 − {(aT
3 q1 )q1 +
T
(a3 q1 )q1 + (aT
3 q2 )q2 :

(aT
3 q2 )q2 }
右辺の第 2 項
ベクトル a3 をベクトル q1 , q2 が定める平面へ射影


 a1 a2 a3  =  q1 q2
⇓
A = QR


∥ b1 ∥ aT
aT
2 q1
3 q1

q3   0
∥ b2 ∥ aT
3 q2
0
0
∥ b3 ∥
b3 ⊥ q1 , q2
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
43 / 57
平井 慎一 (立命館大学 ロボティクス学科)
QR 分解とその応用
数値計算:射影
44 / 57
QR 分解とその応用
QR 分解
QR 分解
ベクトル a1 , a2 , a3 を正規直交系 q1 , q2 , q3 を用いて表す
ベクトル a1 , a2 , a3 を正規直交系 q1 , q2 , q3 を用いて表す
a1 =∥ b1 ∥ q1
a2 =∥ b2 ∥ q2 + (aT
2 q1 )q1
T
a3 =∥ b3 ∥ q3 + (aT
3 q1 )q1 + (a3 q2 )q2
a1 =∥ b1 ∥ q1
a2 =∥ b2 ∥ q2 + (aT
2 q1 )q1
T
a3 =∥ b3 ∥ q3 + (aT
3 q1 )q1 + (a3 q2 )q2
⇓



⇓

 a1 a2 a3  =  q1 q2 q3  
A = QR
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影

∥ b1 ∥ aT
aT
2 q1
3 q1
T
0
∥ b2 ∥ a3 q2 
0
0
∥ b3 ∥
44 / 57




 a1 a2 a3  =  q1 q2 q3  
A = QR
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影

∥ b1 ∥ aT
aT
2 q1
3 q1
T
0
∥ b2 ∥ a3 q2 
0
0
∥ b3 ∥
44 / 57
QR 分解とその応用
QR 分解とその応用
QR 分解
MATLAB
ベクトル a1 , a2 , a3 を正規直交系 q1 , q2 , q3 を用いて表す
>> A
A =
a1 =∥ b1 ∥ q1
a2 =∥ b2 ∥ q2 + (aT
2 q1 )q1
T
a3 =∥ b3 ∥ q3 + (aT
3 q1 )q1 + (a3 q2 )q2
2
1
0
⇓




 a1 a2 a3  =  q1 q2 q3  
A
=
Q
平井 慎一 (立命館大学 ロボティクス学科)
aT
2 q1
aT
3 q1
aT
3 q2
>> Q*R
ans =

∥ b1 ∥

0
∥ b2 ∥
0
0
∥ b3 ∥
R
数値計算:射影
1
2
0
2.0000
1.0000
0
44 / 57
1.0000
2.0000
0
平井 慎一 (立命館大学 ロボティクス学科)
48 / 57
正規方程式
QR 分解
.
QR 分解
..
行列 A を直交行列 Q と上三角行列 R の積で表す
正規方程式 AT Ax = AT b
R = 
平井 慎一 (立命館大学 ロボティクス学科)
R T Rx = R T Q T b
∥ b1 ∥
aT
2 q1
∥ b2 ∥
数値計算:射影

aT
3 q1
T
a 3 q2 
∥ b3 ∥
行列 R は上三角行列 =⇒ R T は下三角行列
=⇒ 逆行列 (R T )−1 が存在
正規方程式
Rx = Q T b
.
.
Q =  q1 q2 q2 

AT = (QR)T = R T Q T
AT A = R T Q T QR = R T (Q T Q)R = R T R


A = QR,
.
A = QR
.
..
数値計算:射影
QR 分解とその応用
QR 分解とその応用
45 / 57
最後の式から順次解くことにより解を求める
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
49 / 57
QR 分解とその応用
QR 分解とその応用
射影
MATLAB
行列 A = QR の射影行列
A(AT A)−1 AT = (QR)(R T R)−1 (QR)T
ファイル qr decompose.m
上三角行列 R は正則 =⇒ (R T R)−1 = R −1 (R T )−1
A = [ 2, 1;...
1, 2;...
0, 0 ];
[Q,R] = qr(A,0);
射影行列
A(AT A)−1 AT = QRR −1 (R T )−1 R T Q T
= QQ T
T
T
= q1 qT
1 + q2 q2 + q3 q3
行列 A の射影行列 ≡ 直交行列 Q の射影行列
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
46 / 57
平井 慎一 (立命館大学 ロボティクス学科)
QR 分解とその応用
50 / 57
ノルム最小解
MATLAB
>> qr_decompose
>> Q
Q =
-0.8944
-0.4472
0
数値計算:射影
QR 分解とその応用
変数 x, y , z, w

 
 

x
−3
1
2 [ ]
 y   5   2
3 

 
 
 α
 z  =  −1  +  1
4  β
w
7
0 −3
(α, β は任意のパラメータ)
-0.4472
0.8944
0
>> R
R =
最も原点に近い変数の組 (ノルム最小解) を求める
-2.2361
0
-1.7889
1.3416
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
47 / 57
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
51 / 57
QR 分解とその応用
QR 分解とその応用
ノルム最小解
ノルム最小解


x
 y 


 z  =
w
x
=
 
−3
 5  

 
 −1  + 
7
x0
+

−3
 5 

x0 = 
 −1  ,
7

平井 慎一 (立命館大学 ロボティクス学科)

1
2 [ ]
 α
2
3 
1
4  β
0 −3
A
α

1
2
 2
3 
,
A=
 1
4 
0 −3

ノルム最小解
最小ノルム
α=

−4
 1 

x = x0 − Px0 = 
 2 
1

[
α
β
]
数値計算:射影
∥ x ∥=
52 / 57
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
56 / 57
まとめ
QR 分解とその応用
まとめ
ノルム最小解
.
正規方程式と射影行列
..
正規方程式
Aα
a1
O
x の集合:点 x0 を通る二次元平面
行列 A の列ベクトル a1 , a2 :平面の向きを定める
.
..
数値計算:射影
53 / 57
QR 分解とその応用
ノルム最小解
Aα
a1
a2
x0
O
行列 A の射影行列:P = AT (AT A)−1 A
点 x0 からノルム最小解に至るベクトル:P(−x0 )
ノルム最小解
x0 + P(−x0 ) = x0 − Px0
数値計算:射影
54 / 57
QR 分解とその応用
ノルム最小解
行列 A を QR 分解
行列 Q の列ベクトル
 


1
0
1  −1 
1  2 
,

q1 = √ 
q2 = √ 
6 1 
14  2 
0
−3
T
Px0 = (xT
0 q1 )q1 + (x0 q2 )q2
 
 

1
0
1
√ 1  2 
√
  4

1
−1
 + (−2 14) √ 
=
= ( 6) √ 
6 1 
14  2   −3
6
0
−3
平井 慎一 (立命館大学 ロボティクス学科)
数値計算:射影
.
A = QR
点 x0 からノルム最小解に至るベクトル
=⇒ ベクトル (−x0 ) の行列 A が定める平面への射影
平井 慎一 (立命館大学 ロボティクス学科)
.
.
射影行列
A(AT A)−1 AT
.
..
.
QR 分解
..
グラム・シュミットの直交化
行列 A を直交行列 Q と上三角行列 R の積で表す
x0
平井 慎一 (立命館大学 ロボティクス学科)
.
AT Ax = AT b
a2
射影
√
22




55 / 57
ノルム最小解への応用
平井 慎一 (立命館大学 ロボティクス学科)
.
数値計算:射影
.

x
 y 

x=
 z ,
w


57 / 57