グラム・シュミットの直交化法について述べる前に, 線形代数の基礎として内積空間,線型独立と線型従属,直交基底について説明する.

内積空間

2つの実ベクトルls_gram-schmidt.eq1.gifに対して,

ls_gram-schmidt.eq2.gif

の演算を内積(inner product)という.内積はls_gram-schmidt.eq3.gifとも表記される.

内積の性質を以下に示す.

  • ls_gram-schmidt.eq4.gif
  • ls_gram-schmidt.eq5.gif
  • ls_gram-schmidt.eq6.gif
  • ls_gram-schmidt.eq7.gif ここで,ls_gram-schmidt.eq8.gifである. また,実行列ls_gram-schmidt.eq9.gifについて,
    ls_gram-schmidt.eq10.gif

ここで,ls_gram-schmidt.eq11.gifである. この性質はls_gram-schmidt.eq12.gifから容易に導出できる.

実ベクトルだけでなく複素ベクトルに拡張する. ls_gram-schmidt.eq13.gifに対して,

ls_gram-schmidt.eq14.gif

を内積という.ls_gram-schmidt.eq15.gifls_gram-schmidt.eq16.gifの複素共役ベクトル(ls_gram-schmidt.eq17.gifを要素とすると,その共役ls_gram-schmidt.eq18.gifで構成されるベクトル)である.

複素ベクトルの内積の性質を以下に示す.

  • ls_gram-schmidt.eq19.gif
  • ls_gram-schmidt.eq5.gif
  • ls_gram-schmidt.eq6.gif
  • ls_gram-schmidt.eq20.gif ここで,ls_gram-schmidt.eq21.gifである. また,複素行列ls_gram-schmidt.eq22.gifについて,
    ls_gram-schmidt.eq23.gif

ここで,ls_gram-schmidt.eq24.gifであり, ls_gram-schmidt.eq25.gifは各要素の複素共役をとり,転置したものである(ls_gram-schmidt.eq26.gif).

これらの内積が定義されたベクトル空間を内積空間(inner product space)という.

線型独立と線型従属

内積空間ls_gram-schmidt.eq27.gif内のベクトルls_gram-schmidt.eq28.gifについて,

ls_gram-schmidt.eq29.gif

をベクトルls_gram-schmidt.eq30.gifの線型結合(linear combination)と呼ぶ. ただし,ls_gram-schmidt.eq31.gifである.

線型結合がls_gram-schmidt.eq32.gifとなる,つまり,

ls_gram-schmidt.eq33.gif

を線型関係という. 線型関係となるのが,すべての係数ls_gram-schmidt.eq34.gifls_gram-schmidt.eq35.gifとなる場合(自明な線型関係)のみのとき, ベクトルls_gram-schmidt.eq36.gifは線型独立(linearly independent),もしくは,1次独立であるという. それに対して,ls_gram-schmidt.eq37.gif以外の解を持つとき,線型従属(linearly dependent)であるという. このような係数の組み合わせによる線型関係を非自明な線型関係という.

  • 例1

方向が同じで,大きさが異なる2つのベクトルls_gram-schmidt.eq38.gifがあるとき, その関係は,

ls_gram-schmidt.eq39.gif

と表される.よって,

ls_gram-schmidt.eq40.gif

となり,係数ls_gram-schmidt.eq41.gifで線型結合が0となるので, 非自明な線型関係が存在し,この2つのベクトルは線型従属であるといえる.

  • 例2

方向が異なる2つのベクトルls_gram-schmidt.eq42.gifがあるとき, その線型結合は,

ls_gram-schmidt.eq43.gif

となる.これが非自明な線型関係をもつとすると,

ls_gram-schmidt.eq44.gif

となり,ls_gram-schmidt.eq45.gifls_gram-schmidt.eq46.gifが同じ方向になってしまう. これは最初の仮定と矛盾する. よって,ls_gram-schmidt.eq38.gifは線型独立である.

正規直交基底

2つのベクトルls_gram-schmidt.eq47.gifの内積が0であるとき,ls_gram-schmidt.eq48.gifls_gram-schmidt.eq16.gifは直交する(orthogonal)といい, ls_gram-schmidt.eq49.gifと表す. そして,ベクトルの組ls_gram-schmidt.eq30.gifがすべて互いに直交するとき, これを直交系(orthogonal system)という.式で表すと以下となる.

ls_gram-schmidt.eq50.gif

また,ls_gram-schmidt.eq30.gifがすべて単位ベクトルのとき,正規直交系という.

さて,体K上のベクトル空間Vのベクトルls_gram-schmidt.eq30.gifの線型結合全体の集合を,

ls_gram-schmidt.eq51.gif

と表し,これをベクトルls_gram-schmidt.eq52.gifによって張られる部分空間(もしくは,生成される部分空間)という (ls_gram-schmidt.eq53.gifと表される).

ベクトル空間Vが線型独立なベクトルls_gram-schmidt.eq30.gifで張られる空間とする.

ls_gram-schmidt.eq54.gif

このとき,ベクトルの組ls_gram-schmidt.eq55.gifをVの基底(basis)という. ls_gram-schmidt.eq52.gifがすべて単位ベクトルのとき正規基底(normal basis)といい, 直交系のとき直交基底(orthogonal basis),単位ベクトルでかつ直交系のとき 正規直交基底(orthonormal basis)という. また,基本ベクトルで構成される基底は標準基底(standard basis)という. まとめると,

  • 正規基底:ls_gram-schmidt.eq56.gif
  • 直交基底:ls_gram-schmidt.eq57.gif
  • 正規直交基底:ls_gram-schmidt.eq58.gif
  • 標準基底:ls_gram-schmidt.eq59.gif ここで,ls_gram-schmidt.eq60.gifはデルタ関数でls_gram-schmidt.eq61.gifで1,ls_gram-schmidt.eq62.gifで0となる. ls_gram-schmidt.eq63.gifは基本ベクトルである(2次元だと(1,0)と(0,1)).

グラム・シュミットの直交化法

内積空間Vにおいて,ある基底を直交基底にすることを直交化(orthogonalize)という. 正規直交基底にするときは正規直交化(orthonormalize)という.

基底ls_gram-schmidt.eq55.gifに対して, 以下の処理を行うことで,正規直交基底ls_gram-schmidt.eq64.gifを得る.

ls_gram-schmidt.eq65.gif

このアルゴリズムをグラム・シュミットの正規直交化法(Gram-Schmidt orthonormalization)という.

グラム・シュミットの直交化では,

  1. ls_gram-schmidt.eq66.gifはそのまま用いる
  2. ls_gram-schmidt.eq67.gifls_gram-schmidt.eq68.gifの内積にls_gram-schmidt.eq67.gifを掛けることで,ls_gram-schmidt.eq68.gif内のls_gram-schmidt.eq66.gif方向成分を算出し,それをls_gram-schmidt.eq68.gifから引く.
  3. ls_gram-schmidt.eq69.gifについて,?と同様な処理でls_gram-schmidt.eq70.gifを求める.

の処理をnまで進めることで直交なベクトル群を得ている. この方法は1つの式で直接ls_gram-schmidt.eq71.gifを求められるので便利だが,一方で誤差の累積が起こる. これを軽減するのが次の修正グラム・シュミット法である.

修正グラム・シュミット法

グラム・シュミット法の手順をC言語のプログラム風に書くと,

for(i = 1,2,...,n){
  ls_gram-schmidt.eq72.gif
  ls_gram-schmidt.eq73.gif
}

となる. 誤差の累積を軽減するために以下のように処理を修正する.

for(i = 1,2,...,n){
  for(j = 1,2,...,i-1){
    ls_gram-schmidt.eq74.gif
  }
  ls_gram-schmidt.eq75.gif
}

例えば,i=3のとき,グラム・シュミット法では,

ls_gram-schmidt.eq76.gif

としていたのを,修正グラム・シュミットでは,

ls_gram-schmidt.eq77.gif

と逐次更新したls_gram-schmidt.eq70.gifを使っている. もともとls_gram-schmidt.eq78.gifのはずなので, 本来上記二つの結果は変わらない. ただしこれはls_gram-schmidt.eq79.gifを求めるときに誤差がなければという前提条件付である. 例えば,もともとls_gram-schmidt.eq66.gifls_gram-schmidt.eq68.gifが直交に近いと, ls_gram-schmidt.eq80.gifls_gram-schmidt.eq68.gifに比べて非常に小さくなり,丸め誤差が発生してしまう. 修正グラム・シュミットを使った場合,少なくともls_gram-schmidt.eq81.gifにはその誤差が影響しない.


添付ファイル: filels_gram-schmidt.eq80.gif 670件 [詳細] filels_gram-schmidt.eq81.gif 716件 [詳細] filels_gram-schmidt.eq9.gif 716件 [詳細] filels_gram-schmidt.eq68.gif 737件 [詳細] filels_gram-schmidt.eq69.gif 680件 [詳細] filels_gram-schmidt.eq7.gif 675件 [詳細] filels_gram-schmidt.eq70.gif 697件 [詳細] filels_gram-schmidt.eq71.gif 647件 [詳細] filels_gram-schmidt.eq72.gif 639件 [詳細] filels_gram-schmidt.eq73.gif 646件 [詳細] filels_gram-schmidt.eq74.gif 704件 [詳細] filels_gram-schmidt.eq75.gif 681件 [詳細] filels_gram-schmidt.eq76.gif 704件 [詳細] filels_gram-schmidt.eq77.gif 663件 [詳細] filels_gram-schmidt.eq78.gif 598件 [詳細] filels_gram-schmidt.eq79.gif 594件 [詳細] filels_gram-schmidt.eq8.gif 637件 [詳細] filels_gram-schmidt.eq54.gif 760件 [詳細] filels_gram-schmidt.eq55.gif 741件 [詳細] filels_gram-schmidt.eq56.gif 896件 [詳細] filels_gram-schmidt.eq57.gif 807件 [詳細] filels_gram-schmidt.eq58.gif 779件 [詳細] filels_gram-schmidt.eq59.gif 642件 [詳細] filels_gram-schmidt.eq6.gif 756件 [詳細] filels_gram-schmidt.eq60.gif 775件 [詳細] filels_gram-schmidt.eq61.gif 733件 [詳細] filels_gram-schmidt.eq62.gif 736件 [詳細] filels_gram-schmidt.eq63.gif 757件 [詳細] filels_gram-schmidt.eq64.gif 732件 [詳細] filels_gram-schmidt.eq65.gif 757件 [詳細] filels_gram-schmidt.eq66.gif 670件 [詳細] filels_gram-schmidt.eq67.gif 691件 [詳細] filels_gram-schmidt.eq41.gif 722件 [詳細] filels_gram-schmidt.eq42.gif 696件 [詳細] filels_gram-schmidt.eq43.gif 737件 [詳細] filels_gram-schmidt.eq44.gif 744件 [詳細] filels_gram-schmidt.eq45.gif 690件 [詳細] filels_gram-schmidt.eq46.gif 899件 [詳細] filels_gram-schmidt.eq47.gif 688件 [詳細] filels_gram-schmidt.eq48.gif 615件 [詳細] filels_gram-schmidt.eq49.gif 821件 [詳細] filels_gram-schmidt.eq5.gif 623件 [詳細] filels_gram-schmidt.eq50.gif 695件 [詳細] filels_gram-schmidt.eq51.gif 770件 [詳細] filels_gram-schmidt.eq52.gif 801件 [詳細] filels_gram-schmidt.eq53.gif 672件 [詳細] filels_gram-schmidt.eq28.gif 753件 [詳細] filels_gram-schmidt.eq29.gif 692件 [詳細] filels_gram-schmidt.eq3.gif 789件 [詳細] filels_gram-schmidt.eq30.gif 660件 [詳細] filels_gram-schmidt.eq31.gif 689件 [詳細] filels_gram-schmidt.eq32.gif 777件 [詳細] filels_gram-schmidt.eq33.gif 730件 [詳細] filels_gram-schmidt.eq34.gif 691件 [詳細] filels_gram-schmidt.eq35.gif 716件 [詳細] filels_gram-schmidt.eq36.gif 884件 [詳細] filels_gram-schmidt.eq37.gif 694件 [詳細] filels_gram-schmidt.eq38.gif 737件 [詳細] filels_gram-schmidt.eq39.gif 897件 [詳細] filels_gram-schmidt.eq4.gif 812件 [詳細] filels_gram-schmidt.eq40.gif 639件 [詳細] filels_gram-schmidt.eq18.gif 739件 [詳細] filels_gram-schmidt.eq19.gif 712件 [詳細] filels_gram-schmidt.eq2.gif 621件 [詳細] filels_gram-schmidt.eq20.gif 728件 [詳細] filels_gram-schmidt.eq21.gif 724件 [詳細] filels_gram-schmidt.eq22.gif 700件 [詳細] filels_gram-schmidt.eq24.gif 940件 [詳細] filels_gram-schmidt.eq25.gif 694件 [詳細] filels_gram-schmidt.eq23.gif 718件 [詳細] filels_gram-schmidt.eq26.gif 711件 [詳細] filels_gram-schmidt.eq27.gif 756件 [詳細] filels_gram-schmidt.eq1.gif 718件 [詳細] filels_gram-schmidt.eq10.gif 846件 [詳細] filels_gram-schmidt.eq11.gif 702件 [詳細] filels_gram-schmidt.eq12.gif 712件 [詳細] filels_gram-schmidt.eq13.gif 808件 [詳細] filels_gram-schmidt.eq14.gif 727件 [詳細] filels_gram-schmidt.eq15.gif 735件 [詳細] filels_gram-schmidt.eq16.gif 764件 [詳細] filels_gram-schmidt.eq17.gif 700件 [詳細]

トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2024-03-08 (金) 18:06:09