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

内積空間

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 667件 [詳細] filels_gram-schmidt.eq81.gif 713件 [詳細] filels_gram-schmidt.eq9.gif 715件 [詳細] filels_gram-schmidt.eq68.gif 735件 [詳細] filels_gram-schmidt.eq69.gif 679件 [詳細] filels_gram-schmidt.eq7.gif 674件 [詳細] filels_gram-schmidt.eq70.gif 696件 [詳細] filels_gram-schmidt.eq71.gif 646件 [詳細] filels_gram-schmidt.eq72.gif 636件 [詳細] filels_gram-schmidt.eq73.gif 643件 [詳細] filels_gram-schmidt.eq74.gif 703件 [詳細] filels_gram-schmidt.eq75.gif 680件 [詳細] filels_gram-schmidt.eq76.gif 703件 [詳細] filels_gram-schmidt.eq77.gif 661件 [詳細] filels_gram-schmidt.eq78.gif 597件 [詳細] filels_gram-schmidt.eq79.gif 593件 [詳細] filels_gram-schmidt.eq8.gif 636件 [詳細] filels_gram-schmidt.eq54.gif 759件 [詳細] filels_gram-schmidt.eq55.gif 740件 [詳細] filels_gram-schmidt.eq56.gif 894件 [詳細] filels_gram-schmidt.eq57.gif 805件 [詳細] filels_gram-schmidt.eq58.gif 778件 [詳細] filels_gram-schmidt.eq59.gif 640件 [詳細] filels_gram-schmidt.eq6.gif 754件 [詳細] filels_gram-schmidt.eq60.gif 774件 [詳細] filels_gram-schmidt.eq61.gif 731件 [詳細] filels_gram-schmidt.eq62.gif 734件 [詳細] filels_gram-schmidt.eq63.gif 755件 [詳細] filels_gram-schmidt.eq64.gif 731件 [詳細] filels_gram-schmidt.eq65.gif 756件 [詳細] filels_gram-schmidt.eq66.gif 669件 [詳細] filels_gram-schmidt.eq67.gif 690件 [詳細] filels_gram-schmidt.eq41.gif 720件 [詳細] filels_gram-schmidt.eq42.gif 694件 [詳細] filels_gram-schmidt.eq43.gif 736件 [詳細] filels_gram-schmidt.eq44.gif 742件 [詳細] filels_gram-schmidt.eq45.gif 689件 [詳細] filels_gram-schmidt.eq46.gif 897件 [詳細] filels_gram-schmidt.eq47.gif 687件 [詳細] filels_gram-schmidt.eq48.gif 613件 [詳細] filels_gram-schmidt.eq49.gif 820件 [詳細] filels_gram-schmidt.eq5.gif 621件 [詳細] filels_gram-schmidt.eq50.gif 694件 [詳細] filels_gram-schmidt.eq51.gif 769件 [詳細] filels_gram-schmidt.eq52.gif 798件 [詳細] filels_gram-schmidt.eq53.gif 670件 [詳細] filels_gram-schmidt.eq28.gif 752件 [詳細] filels_gram-schmidt.eq29.gif 691件 [詳細] filels_gram-schmidt.eq3.gif 788件 [詳細] filels_gram-schmidt.eq30.gif 659件 [詳細] filels_gram-schmidt.eq31.gif 687件 [詳細] filels_gram-schmidt.eq32.gif 776件 [詳細] filels_gram-schmidt.eq33.gif 727件 [詳細] filels_gram-schmidt.eq34.gif 690件 [詳細] filels_gram-schmidt.eq35.gif 715件 [詳細] filels_gram-schmidt.eq36.gif 883件 [詳細] filels_gram-schmidt.eq37.gif 691件 [詳細] filels_gram-schmidt.eq38.gif 736件 [詳細] filels_gram-schmidt.eq39.gif 894件 [詳細] filels_gram-schmidt.eq4.gif 811件 [詳細] filels_gram-schmidt.eq40.gif 638件 [詳細] filels_gram-schmidt.eq18.gif 737件 [詳細] filels_gram-schmidt.eq19.gif 711件 [詳細] filels_gram-schmidt.eq2.gif 620件 [詳細] filels_gram-schmidt.eq20.gif 726件 [詳細] filels_gram-schmidt.eq21.gif 723件 [詳細] filels_gram-schmidt.eq22.gif 699件 [詳細] filels_gram-schmidt.eq24.gif 939件 [詳細] filels_gram-schmidt.eq25.gif 693件 [詳細] filels_gram-schmidt.eq23.gif 715件 [詳細] filels_gram-schmidt.eq26.gif 710件 [詳細] filels_gram-schmidt.eq27.gif 754件 [詳細] filels_gram-schmidt.eq1.gif 716件 [詳細] filels_gram-schmidt.eq10.gif 844件 [詳細] filels_gram-schmidt.eq11.gif 700件 [詳細] filels_gram-schmidt.eq12.gif 710件 [詳細] filels_gram-schmidt.eq13.gif 806件 [詳細] filels_gram-schmidt.eq14.gif 725件 [詳細] filels_gram-schmidt.eq15.gif 733件 [詳細] filels_gram-schmidt.eq16.gif 761件 [詳細] filels_gram-schmidt.eq17.gif 698件 [詳細]

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