グラム・シュミットの正規直交化法 (グラム・シュミットのせいきちょっこうかほう、英 : Gram–Schmidt orthonormalization )とは、計量ベクトル空間 に属する線型独立 な有限個のベクトル が与えられたとき、それらと同じ部分空間 を張る 正規直交系 を作り出すアルゴリズム の一種。シュミットの直交化 (ちょっこうか、orthogonalization )ともいう。ヨルゲン・ペダーセン・グラム およびエルハルト・シュミット に因んで名付けられた。変換行列は上三角行列 に取ることができる。正規化 する工程を省略すると、必ずしも正規でない直交系を得ることができる。
アルゴリズム
V を計量ベクトル空間 とし、V のベクトル v , u の内積 を (v , u ) と表すことにする。与えられたベクトルの線型独立 系を {v 1 , v 2 , …, v n } とする。
直交化
u
1
:=
v
1
u
2
:=
v
2
−
(
u
1
,
v
2
)
(
u
1
,
u
1
)
u
1
u
3
:=
v
3
−
(
u
1
,
v
3
)
(
u
1
,
u
1
)
u
1
−
(
u
2
,
v
3
)
(
u
2
,
u
2
)
u
2
⋮
u
n
:=
v
n
−
(
u
1
,
v
n
)
(
u
1
,
u
1
)
u
1
−
(
u
2
,
v
n
)
(
u
2
,
u
2
)
u
2
−
⋯
−
(
u
n
−
1
,
v
n
)
(
u
n
−
1
,
u
n
−
1
)
u
n
−
1
:=
v
n
−
∑
i
=
1
n
−
1
(
u
i
,
v
n
)
(
u
i
,
u
i
)
u
i
{\displaystyle {\begin{aligned}{\boldsymbol {u}}_{1}&:={\boldsymbol {v}}_{1}\\{\boldsymbol {u}}_{2}&:={\boldsymbol {v}}_{2}-{\frac {({\boldsymbol {u}}_{1},{\boldsymbol {v}}_{2})}{({\boldsymbol {u}}_{1},{\boldsymbol {u}}_{1})}}{\boldsymbol {u}}_{1}\\{\boldsymbol {u}}_{3}&:={\boldsymbol {v}}_{3}-{\frac {({\boldsymbol {u}}_{1},{\boldsymbol {v}}_{3})}{({\boldsymbol {u}}_{1},{\boldsymbol {u}}_{1})}}{\boldsymbol {u}}_{1}-{\frac {({\boldsymbol {u}}_{2},{\boldsymbol {v}}_{3})}{({\boldsymbol {u}}_{2},{\boldsymbol {u}}_{2})}}{\boldsymbol {u}}_{2}\\&\vdots \\{\boldsymbol {u}}_{n}&:={\boldsymbol {v}}_{n}-{\frac {({\boldsymbol {u}}_{1},{\boldsymbol {v}}_{n})}{({\boldsymbol {u}}_{1},{\boldsymbol {u}}_{1})}}{\boldsymbol {u}}_{1}-{\frac {({\boldsymbol {u}}_{2},{\boldsymbol {v}}_{n})}{({\boldsymbol {u}}_{2},{\boldsymbol {u}}_{2})}}{\boldsymbol {u}}_{2}-\dotsb -{\frac {({\boldsymbol {u}}_{n-1},{\boldsymbol {v}}_{n})}{({\boldsymbol {u}}_{n-1},{\boldsymbol {u}}_{n-1})}}{\boldsymbol {u}}_{n-1}\\&:={\boldsymbol {v}}_{n}-\textstyle \sum \limits _{i=1}^{n-1}{\dfrac {({\boldsymbol {u}}_{i},{\boldsymbol {v}}_{n})}{({\boldsymbol {u}}_{i},{\boldsymbol {u}}_{i})}}{\boldsymbol {u}}_{i}\end{aligned}}}
によって順に新しいベクトルを作っていくと、{u 1 , u 2 , …, u n } は新しい線型独立系になる。構成から、互いに直交していることは容易に分かる。
正規化
e
i
:=
u
i
(
u
i
,
u
i
)
1
/
2
{\displaystyle {\boldsymbol {e}}_{i}:={\frac {{\boldsymbol {u}}_{i}}{({\boldsymbol {u}}_{i},{\boldsymbol {u}}_{i})^{1/2}}}}
とおけば {e 1 , e 2 , …, e n } が求める性質を満たす正規直交系であることが分かる。
脚注
参考文献
関連項目
外部リンク