§E20.7固有値の反復解法

最終更新

固有値と固有ベクトルを求める反復のうち、各段で行列AAをベクトルに掛けて正規化するだけのものをべき乗法という。AAが固有ベクトルからなる基底をもち、絶対値が最大の固有値λ\lambdaが他の固有値よりも絶対値において真に大きく、初期ベクトルがλ\lambdaの固有空間の成分をもつならば、反復のベクトルと固有空間の単位ベクトルとの差は、絶対値11の因子を除いて、他の固有値の絶対値と∣λ∣\lvert\lambda\rvertとの比の最大値qqのkk乗の定数倍で抑えられる。成分がすべて正の確率行列PPと確率ベクトルppについて、確率ベクトルの列PkpP^kpはPPの定常分布π\piに近づき、ppを Euclid ノルムで正規化したベクトルから始めたべき乗法の反復はπ/∥π∥2\pi/\lVert\pi\rVert_2に近づく。

qqが11に近いと、この評価はゆっくりとしか減らない。固有値が11、0.990.99、0.50.5である対角化可能な33次の行列ではq=0.99q=0.99であり、qk≤10−8q^k\le10^{-8}となる最小のkkは18331833である。固有値でない数σ\sigmaをシフトとして選び、(A−σI)−1(A-\sigma I)^{-1}にべき乗法を適用する反復を逆反復という。逆反復では、σ\sigmaに最も近い固有値λ\lambdaについて、比qqは∣λ−σ∣\lvert\lambda-\sigma\rvertと他の固有値とσ\sigmaとの距離との比の最大値に替わる。上の行列でσ=1.001\sigma=1.001とすると比は1/111/11となり、88回でqk≤10−8q^k\le10^{-8}となる。さらにシフトを各段の Rayleigh 商y∗Ayy^*Ay(yyは反復の単位ベクトル)に取り替えるのが Rayleigh 商反復であり、実対称行列の単純固有値の固有ベクトルが張る部分空間に十分近いベクトルから始めると、次の反復が定まる各段で、その部分空間からの距離は前の段の距離の三乗の、AAと固有値だけで定まる定数倍以下になる。

固有ベクトルからなる正規直交基底と実固有値をもつ行列、とくに実対称行列では、Rayleigh 商と固有値との差は、単位ベクトルと固有空間との距離の二乗で抑えられ、Rayleigh 商反復の三次の収束はこの評価に基づく。実対称行列の固有値は Rayleigh 商の最小最大表示によっても特徴づけられる。同じ種類の行列では、残差と固有値の間隔から固有値と固有空間への誤差を評価することができるが、正規直交な固有基底をもたない行列ではこの評価は成り立たないことがある。本記事では、べき乗法と逆反復、Rayleigh 商反復の収束の条件と、それらの誤差の評価について解説する。

1 べき乗法

定義 1.1.n∈N≥1n\in\NNとする。h,w∈Cnh,w\in\C^nに対してh∗h^*をhhの共役転置とし、h∗w=∑i=1nhi‾wih^*w=\sum_{i=1}^n\overline{h_i}w_i、∥h∥2:=(h∗h)1/2\lVert h\rVert_2:=(h^*h)^{1/2}と置く。A∈Cn×nA\in\C^{n\times n}とし、y0∈Cny_0\in\C^nを∥y0∥2=1\lVert y_0\rVert_2=1を満たすベクトルとする。k≥0k\ge0についてyky_kが定まりAyk≠0Ay_k\ne0であるとき

yk+1:=Ayk∥Ayk∥2y_{k+1}:=\frac{Ay_k}{\lVert Ay_k\rVert_2}

と置く。こうして定まる列(yk)(y_k)を、AAに対するy0y_0からの べき乗法 (power iteration) という。AAが正則ならば、すべてのk≥0k\ge0についてyky_kが定まる。∥y∥2=1\lVert y\rVert_2=1を満たすy∈Cny\in\C^nに対して、複素数y∗Ayy^*AyをAAのyyにおける Rayleigh 商 (Rayleigh quotient) といい、べき乗法についてμk:=yk∗Ayk\mu_k:=y_k^*Ay_kと置く。部分空間E⊂CnE\subset\C^nとy∈Cny\in\C^nに対して、dist⁡(y,E):=inf⁡e∈E∥y−e∥2\operatorname{dist}(y,E):=\inf_{e\in E}\lVert y-e\rVert_2と置き、これをyyのEEからの 距離 (distance from a subspace) という。

補題 1.2.n∈N≥1n\in\NN、A∈Cn×nA\in\C^{n\times n}とし、∥A∥2\lVert A\rVert_2をCn\C^nの∥⋅∥2\lVert\cdot\rVert_2に関するAAの作用素ノルム(§E20.5 定義 4.2)とする。λ∈C\lambda\in\Cとu^∈Cn\hat u\in\C^nがAu^=λu^A\hat u=\lambda\hat u、∥u^∥2=1\lVert\hat u\rVert_2=1を満たすとする。∥z∥2=1\lVert z\rVert_2=1を満たす任意のz∈Cnz\in\C^nと∣θ∣=1\lvert\theta\rvert=1を満たす任意のθ∈C\theta\in\Cに対して

(θz)∗A(θz)=z∗Az,∣z∗Az−λ∣≤2∥A∥2∥θz−u^∥2(\theta z)^*A(\theta z)=z^*Az,\qquad\lvert z^*Az-\lambda\rvert\le2\lVert A\rVert_2\lVert\theta z-\hat u\rVert_2

が成り立つ。

証明. 任意のh∈Cnh\in\C^nに対して、Cauchy–Schwarz の不等式により∥Ah∥22=∑i∣∑jaijhj∣2≤(∑i,j∣aij∣2)∥h∥22\lVert Ah\rVert_2^2=\sum_i\lvert\sum_ja_{ij}h_j\rvert^2\le\bigl(\sum_{i,j}\lvert a_{ij}\rvert^2\bigr)\lVert h\rVert_2^2であるから、∥A∥2<∞\lVert A\rVert_2<\inftyであり、∥Ah∥2≤∥A∥2∥h∥2\lVert Ah\rVert_2\le\lVert A\rVert_2\lVert h\rVert_2が成り立つ。w:=θzw:=\theta zと置く。θ‾θ=1\overline\theta\theta=1であるからw∗Aw=θ‾θz∗Az=z∗Azw^*Aw=\overline\theta\theta z^*Az=z^*Azであり、∥w∥2=1\lVert w\rVert_2=1である。u^∗Au^=λu^∗u^=λ\hat u^*A\hat u=\lambda\hat u^*\hat u=\lambdaであるから

z∗Az−λ=w∗Aw−u^∗Au^=(w−u^)∗Aw+u^∗A(w−u^)z^*Az-\lambda=w^*Aw-\hat u^*A\hat u=(w-\hat u)^*Aw+\hat u^*A(w-\hat u)

である。Cauchy–Schwarz の不等式により∣(w−u^)∗Aw∣≤∥w−u^∥2∥A∥2\lvert(w-\hat u)^*Aw\rvert\le\lVert w-\hat u\rVert_2\lVert A\rVert_2、∣u^∗A(w−u^)∣≤∥A∥2∥w−u^∥2\lvert\hat u^*A(w-\hat u)\rvert\le\lVert A\rVert_2\lVert w-\hat u\rVert_2であり、二つを加えて主張の不等式を得る。▨

補題 1.3.n∈N≥1n\in\NNとし、a,b∈Cna,b\in\C^nをa≠0a\ne0、b≠0b\ne0を満たすベクトルとする。このとき

∥a∥a∥2−b∥b∥2∥2≤2∥a−b∥2∥b∥2\left\lVert\frac{a}{\lVert a\rVert_2}-\frac{b}{\lVert b\rVert_2}\right\rVert_2\le\frac{2\lVert a-b\rVert_2}{\lVert b\rVert_2}

が成り立つ。

証明. 演習とする(問題 8.1)。▨

定理 1.4.n∈N≥1n\in\NNとし、A∈Cn×nA\in\C^{n\times n}がCn\C^nの基底v1,…,vnv_1,\dots,v_nと複素数λ1,…,λn\lambda_1,\dots,\lambda_nについてAvi=λiviAv_i=\lambda_iv_i(1≤i≤n1\le i\le n)を満たすとする。整数1≤d≤n1\le d\le nと複素数λ≠0\lambda\ne0について、i≤di\le dならばλi=λ\lambda_i=\lambda、i>di>dならば∣λi∣<∣λ∣\lvert\lambda_i\rvert<\lvert\lambda\rvertであるとする。d<nd<nならばq:=max⁡i>d∣λi∣/∣λ∣q:=\max_{i>d}\lvert\lambda_i\rvert/\lvert\lambda\rvert、d=nd=nならばq:=0q:=0と置き、q0:=1q^0:=1とする。y0∈Cny_0\in\C^nを∥y0∥2=1\lVert y_0\rVert_2=1を満たすベクトルとし、y0=∑i=1nciviy_0=\sum_{i=1}^nc_iv_iと表して、u:=∑i≤dcivi≠0u:=\sum_{i\le d}c_iv_i\ne0を仮定する。(yk)(y_k)をAAに対するy0y_0からのべき乗法、μk:=yk∗Ayk\mu_k:=y_k^*Ay_kとする。

  1. すべてのk≥0k\ge0についてAyk≠0Ay_k\ne0であり、Aky0≠0A^ky_0\ne0、yk=Aky0/∥Aky0∥2y_k=A^ky_0/\lVert A^ky_0\rVert_2である。
  2. u^:=u/∥u∥2\hat u:=u/\lVert u\rVert_2、θk:=∣λ∣k/λk\theta_k:=\lvert\lambda\rvert^k/\lambda^kと置く。kkによらない実数C≥0C\ge0が存在して、すべてのk≥0k\ge0について∥θkyk−u^∥2≤Cqk\lVert\theta_ky_k-\hat u\rVert_2\le Cq^kが成り立つ。
  3. (2)のCCについて、すべてのk≥0k\ge0で∣μk−λ∣≤2C∥A∥2qk\lvert\mu_k-\lambda\rvert\le2C\lVert A\rVert_2q^kが成り立つ。

証明.(1)を示す。k≥0k\ge0についてwk:=∑i>dci(λi/λ)kviw_k:=\sum_{i>d}c_i(\lambda_i/\lambda)^kv_iと置く(d=nd=nならばwk:=0w_k:=0)。Akvi=λikviA^kv_i=\lambda_i^kv_iであるから

Aky0=∑i=1nciλikvi=λk(u+wk)A^ky_0=\sum_{i=1}^nc_i\lambda_i^kv_i=\lambda^k(u+w_k)

である。u≠0u\ne0であるからi≤di\le dのあるiiについてci≠0c_i\ne0であり、v1,…,vnv_1,\dots,v_nは一次独立であるからu+wk≠0u+w_k\ne0、したがってAky0≠0A^ky_0\ne0である。yk=Aky0/∥Aky0∥2y_k=A^ky_0/\lVert A^ky_0\rVert_2が成り立つとすると、Ayk=Ak+1y0/∥Aky0∥2≠0Ay_k=A^{k+1}y_0/\lVert A^ky_0\rVert_2\ne0であり、yk+1=Ak+1y0/∥Ak+1y0∥2y_{k+1}=A^{k+1}y_0/\lVert A^{k+1}y_0\rVert_2である。k=0k=0では∥y0∥2=1\lVert y_0\rVert_2=1から等式が成り立つので、kkに関する帰納法により(1)が従う。

(2)を示す。θkλk=∣λ∣k\theta_k\lambda^k=\lvert\lambda\rvert^kであるから、(1)により

θkyk=∣λ∣k(u+wk)∣λ∣k∥u+wk∥2=u+wk∥u+wk∥2\theta_ky_k=\frac{\lvert\lambda\rvert^k(u+w_k)}{\lvert\lambda\rvert^k\lVert u+w_k\rVert_2}=\frac{u+w_k}{\lVert u+w_k\rVert_2}

である。M:=∑i>d∣ci∣∥vi∥2M:=\sum_{i>d}\lvert c_i\rvert\lVert v_i\rVert_2と置くと、i>di>dについて∣λi/λ∣k≤qk\lvert\lambda_i/\lambda\rvert^k\le q^kであるから∥wk∥2≤Mqk\lVert w_k\rVert_2\le Mq^kである。補題 1.3をa=u+wka=u+w_k、b=ub=uに適用すると

∥θkyk−u^∥2≤2∥wk∥2∥u∥2≤2M∥u∥2qk\lVert\theta_ky_k-\hat u\rVert_2\le\frac{2\lVert w_k\rVert_2}{\lVert u\rVert_2}\le\frac{2M}{\lVert u\rVert_2}q^k

であり、C:=2M/∥u∥2C:=2M/\lVert u\rVert_2と置けばよい。

(3)を示す。uuはAAの固有値λ\lambdaの固有ベクトルの一次結合であるからAu^=λu^A\hat u=\lambda\hat uであり、∣θk∣=1\lvert\theta_k\rvert=1、∥yk∥2=1\lVert y_k\rVert_2=1である。補題 1.2をz=ykz=y_k、θ=θk\theta=\theta_kに適用し、(2)を用いて∣μk−λ∣≤2∥A∥2∥θkyk−u^∥2≤2C∥A∥2qk\lvert\mu_k-\lambda\rvert\le2\lVert A\rVert_2\lVert\theta_ky_k-\hat u\rVert_2\le2C\lVert A\rVert_2q^kを得る。▨

注意 1.5.

  1. 絶対値が最大の固有値が二つ以上あるとき、べき乗法の方向が収束するかどうかは初期ベクトルによる。A:=diag⁡(1,−1)A:=\operatorname{diag}(1,-1)の固有値1,−11,-1の絶対値は等しく、固有空間はspan⁡{e1}\operatorname{span}\{e_1\}、span⁡{e2}\operatorname{span}\{e_2\}である。y0:=(1,1)T/2y_0:=(1,1)^{\mathsf T}/\sqrt2ならばAykAy_kの第22成分の符号が毎回反転するのでyk=(1,(−1)k)T/2y_k=(1,(-1)^k)^{\mathsf T}/\sqrt2、μk=0\mu_k=0であり、任意のkkと∣θ∣=1\lvert\theta\rvert=1についてdist⁡(θyk,span⁡{e1})=dist⁡(θyk,span⁡{e2})=1/2\operatorname{dist}(\theta y_k,\operatorname{span}\{e_1\})=\operatorname{dist}(\theta y_k,\operatorname{span}\{e_2\})=1/\sqrt2である。y0:=e1y_0:=e_1ならば、すべてのkkについてyk=e1y_k=e_1である。
  2. 定理 1.4の仮定の下で(yk)(y_k)が収束するならば、λ\lambdaは正の実数である。実際、yk→yy_k\to yとすると、u^\hat uの成分u^j≠0\hat u_j\ne0をとれば、定理 1.4 (2)により∣yk,j∣=∣θkyk,j∣→∣u^j∣\lvert y_{k,j}\rvert=\lvert\theta_ky_{k,j}\rvert\to\lvert\hat u_j\rvertであるから∣yj∣=∣u^j∣>0\lvert y_j\rvert=\lvert\hat u_j\rvert>0であり、十分大きいkkについてyk,j≠0y_{k,j}\ne0、θk=θkyk,j/yk,j→u^j/yj\theta_k=\theta_ky_{k,j}/y_{k,j}\to\hat u_j/y_jである。λ=∣λ∣eiφ\lambda=\lvert\lambda\rvert e^{\mathrm i\varphi}と書くとθk+1/θk=e−iφ\theta_{k+1}/\theta_k=e^{-\mathrm i\varphi}であり、極限u^j/yj\hat u_j/y_jは00でないから左辺は11に収束し、eiφ=1e^{\mathrm i\varphi}=1である。A:=diag⁡(−2,1)A:=\operatorname{diag}(-2,1)、y0:=(1,1)T/2y_0:=(1,1)^{\mathsf T}/\sqrt2ではλ=−2\lambda=-2、d=1d=1、u=e1/2u=e_1/\sqrt2、θk=(−1)k\theta_k=(-1)^kであり、 yk=((−2)k,1)T4k+1,θkyk=(2k,(−1)k)T4k+1→e1,μk=1−2⋅4k4k+1→−2y_k=\frac{((-2)^k,1)^{\mathsf T}}{\sqrt{4^k+1}},\qquad\theta_ky_k=\frac{(2^k,(-1)^k)^{\mathsf T}}{\sqrt{4^k+1}}\to e_1,\qquad\mu_k=\frac{1-2\cdot4^k}{4^k+1}\to-2 である。yky_kの第11成分は符号が交互に変わり、絶対値は11に収束するので、(yk)(y_k)は収束しない。

2 正規直交な固有基底をもつ行列

補題 2.1.n∈N≥1n\in\NN、A∈Cn×nA\in\C^{n\times n}とし、Cn\C^nの基底v1,…,vnv_1,\dots,v_nでvi∗vj=δijv_i^*v_j=\delta_{ij}を満たすものと実数λ1,…,λn\lambda_1,\dots,\lambda_nがAvi=λiviAv_i=\lambda_iv_i(1≤i≤n1\le i\le n)を満たすとする。y∈Cny\in\C^nに対してci:=vi∗yc_i:=v_i^*yと置く。

  1. y=∑iciviy=\sum_ic_iv_i、∥y∥22=∑i∣ci∣2\lVert y\rVert_2^2=\sum_i\lvert c_i\rvert^2、y∗Ay=∑iλi∣ci∣2y^*Ay=\sum_i\lambda_i\lvert c_i\rvert^2であり、任意のμ∈C\mu\in\Cに対して∥Ay−μy∥22=∑i∣λi−μ∣2∣ci∣2\lVert Ay-\mu y\rVert_2^2=\sum_i\lvert\lambda_i-\mu\rvert^2\lvert c_i\rvert^2である。
  2. J⊂{1,…,n}J\subset\{1,\dots,n\}とし、EJ:=span⁡{vi∣i∈J}E_J:=\operatorname{span}\{v_i\mid i\in J\}と置く。dist⁡(y,EJ)2=∑i∉J∣ci∣2\operatorname{dist}(y,E_J)^2=\sum_{i\notin J}\lvert c_i\rvert^2であり、dist⁡(y,EJ)=∥y−e∥2\operatorname{dist}(y,E_J)=\lVert y-e\rVert_2を満たすe∈EJe\in E_Jは∑i∈Jcivi\sum_{i\in J}c_iv_iだけである。
  3. A∈Rn×nA\in\R^{n\times n}がAT=AA^{\mathsf T}=Aを満たすならば、Rn\R^nの正規直交基底q1,…,qnq_1,\dots,q_nと実数λ1≤⋯≤λn\lambda_1\le\dots\le\lambda_nでAqi=λiqiAq_i=\lambda_iq_iを満たすものが存在する。q1,…,qnq_1,\dots,q_nはCn\C^nの基底としてqi∗qj=δijq_i^*q_j=\delta_{ij}を満たし、det⁡(tI−A)=∏i(t−λi)\det(tI-A)=\prod_i(t-\lambda_i)である。

証明.(1)を示す。y=∑iaiviy=\sum_ia_iv_iと表すとvj∗y=∑iaivj∗vi=ajv_j^*y=\sum_ia_iv_j^*v_i=a_jであるからaj=cja_j=c_jである。w=∑ibiviw=\sum_ib_iv_iに対してw∗w=∑i,jbi‾bjvi∗vj=∑i∣bi∣2w^*w=\sum_{i,j}\overline{b_i}b_jv_i^*v_j=\sum_i\lvert b_i\rvert^2である。Ay=∑iλiciviAy=\sum_i\lambda_ic_iv_iであるからy∗Ay=∑i,jci‾λjcjvi∗vj=∑iλi∣ci∣2y^*Ay=\sum_{i,j}\overline{c_i}\lambda_jc_jv_i^*v_j=\sum_i\lambda_i\lvert c_i\rvert^2であり、Ay−μy=∑i(λi−μ)civiAy-\mu y=\sum_i(\lambda_i-\mu)c_iv_iにw∗ww^*wの式を適用して最後の等式を得る。

(2)を示す。e∈EJe\in E_Jをe=∑i∈Jbivie=\sum_{i\in J}b_iv_iと表すと、y−e=∑i∈J(ci−bi)vi+∑i∉Jciviy-e=\sum_{i\in J}(c_i-b_i)v_i+\sum_{i\notin J}c_iv_iであるから、(1)の式により∥y−e∥22=∑i∈J∣ci−bi∣2+∑i∉J∣ci∣2\lVert y-e\rVert_2^2=\sum_{i\in J}\lvert c_i-b_i\rvert^2+\sum_{i\notin J}\lvert c_i\rvert^2である。右辺はbi=cib_i=c_i(i∈Ji\in J)のときだけ最小値∑i∉J∣ci∣2\sum_{i\notin J}\lvert c_i\rvert^2をとる。

(3)を示す。§D3.15 定理 3.1により、直交行列PPと対角行列DDがPTAP=DP^{\mathsf T}AP=Dを満たす。PPの列をDDの対角成分が非減少になる順に並べ替えても直交行列であり、並べ替えた列をq1,…,qnq_1,\dots,q_n、対角成分をλ1≤⋯≤λn\lambda_1\le\dots\le\lambda_nとするとAqi=λiqiAq_i=\lambda_iq_iである。qiq_iは実ベクトルであるからqi∗qj=qiTqj=δijq_i^*q_j=q_i^{\mathsf T}q_j=\delta_{ij}であり、det⁡(tI−A)=det⁡(tI−D)=∏i(t−λi)\det(tI-A)=\det(tI-D)=\prod_i(t-\lambda_i)である。▨

命題 2.2.n∈N≥1n\in\NN、A∈Cn×nA\in\C^{n\times n}とし、v1,…,vnv_1,\dots,v_nと実数λ1,…,λn\lambda_1,\dots,\lambda_nは補題 2.1の仮定を満たすとする。整数1≤d≤n1\le d\le nと実数λ\lambdaについて、i≤di\le dならばλi=λ\lambda_i=\lambda、i>di>dならばλi≠λ\lambda_i\ne\lambdaであるとし、E:=span⁡{v1,…,vd}E:=\operatorname{span}\{v_1,\dots,v_d\}、δ:=max⁡i∣λi−λ∣\delta:=\max_i\lvert\lambda_i-\lambda\rvertと置く。

  1. ∥y∥2=1\lVert y\rVert_2=1を満たす任意のy∈Cny\in\C^nに対して∣y∗Ay−λ∣≤δdist⁡(y,E)2\lvert y^*Ay-\lambda\rvert\le\delta\operatorname{dist}(y,E)^2が成り立つ。さらに、u^∈E\hat u\in Eが∥u^∥2=1\lVert\hat u\rVert_2=1を満たし、θ∈C\theta\in\Cが∣θ∣=1\lvert\theta\rvert=1を満たすならば、dist⁡(y,E)≤∥θy−u^∥2\operatorname{dist}(y,E)\le\lVert\theta y-\hat u\rVert_2である。
  2. λ≠0\lambda\ne0であり、i>di>dならば∣λi∣<∣λ∣\lvert\lambda_i\rvert<\lvert\lambda\rvertであるとし、y0y_0は定理 1.4の仮定を満たすとする。同定理のqq、(μk)(\mu_k)と定理 1.4 (2)のCCについて、すべてのk≥0k\ge0で∣μk−λ∣≤δC2q2k\lvert\mu_k-\lambda\rvert\le\delta C^2q^{2k}が成り立つ。
  3. y0∈Cny_0\in\C^nが∥y0∥2=1\lVert y_0\rVert_2=1とvi∗y0=0v_i^*y_0=0(i≤di\le d)を満たすならば、AAに対するy0y_0からのべき乗法のyky_kが定まる任意のkkについて、vi∗yk=0v_i^*y_k=0(i≤di\le d)であり、dist⁡(yk,E)=1\operatorname{dist}(y_k,E)=1である。

証明.(1)を示す。ci:=vi∗yc_i:=v_i^*yと置く。補題 2.1 (1)により∑i∣ci∣2=1\sum_i\lvert c_i\rvert^2=1であり、i≤di\le dでλi=λ\lambda_i=\lambdaであるから

y∗Ay−λ=∑i(λi−λ)∣ci∣2=∑i>d(λi−λ)∣ci∣2y^*Ay-\lambda=\sum_i(\lambda_i-\lambda)\lvert c_i\rvert^2=\sum_{i>d}(\lambda_i-\lambda)\lvert c_i\rvert^2

である。したがって∣y∗Ay−λ∣≤δ∑i>d∣ci∣2\lvert y^*Ay-\lambda\rvert\le\delta\sum_{i>d}\lvert c_i\rvert^2であり、補題 2.1 (2)をJ={1,…,d}J=\{1,\dots,d\}に適用すると右辺はδdist⁡(y,E)2\delta\operatorname{dist}(y,E)^2である。後半について、θ‾u^∈E\overline\theta\hat u\in Eであり∥y−θ‾u^∥2=∥θy−u^∥2\lVert y-\overline\theta\hat u\rVert_2=\lVert\theta y-\hat u\rVert_2であるから、dist⁡(y,E)≤∥θy−u^∥2\operatorname{dist}(y,E)\le\lVert\theta y-\hat u\rVert_2である。

(2)を示す。定理 1.4 (2)のu^=u/∥u∥2\hat u=u/\lVert u\rVert_2はEEの単位ベクトルである。(1)と定理 1.4 (2)により∣μk−λ∣≤δdist⁡(yk,E)2≤δ∥θkyk−u^∥22≤δC2q2k\lvert\mu_k-\lambda\rvert\le\delta\operatorname{dist}(y_k,E)^2\le\delta\lVert\theta_ky_k-\hat u\rVert_2^2\le\delta C^2q^{2k}である。

(3)を示す。F:=span⁡{vd+1,…,vn}F:=\operatorname{span}\{v_{d+1},\dots,v_n\}と置くとAF⊂FAF\subset Fであり、補題 2.1 (1)によりw∈Cnw\in\C^nがFFに属することとvi∗w=0v_i^*w=0(i≤di\le d)であることは同値である。y0∈Fy_0\in Fであり、yk∈Fy_k\in FかつAyk≠0Ay_k\ne0ならばyk+1=Ayk/∥Ayk∥2∈Fy_{k+1}=Ay_k/\lVert Ay_k\rVert_2\in Fであるから、yky_kが定まる限りyk∈Fy_k\in Fである。補題 2.1 (2)によりdist⁡(yk,E)2=∑i>d∣vi∗yk∣2=∥yk∥22=1\operatorname{dist}(y_k,E)^2=\sum_{i>d}\lvert v_i^*y_k\rvert^2=\lVert y_k\rVert_2^2=1である。▨

例 2.3.A:=(2112)A:=\begin{pmatrix}2&1\\1&2\end{pmatrix}とする。v1:=(1,1)T/2v_1:=(1,1)^{\mathsf T}/\sqrt2、v2:=(1,−1)T/2v_2:=(1,-1)^{\mathsf T}/\sqrt2はvi∗vj=δijv_i^*v_j=\delta_{ij}とAv1=3v1Av_1=3v_1、Av2=v2Av_2=v_2を満たし、命題 2.2はd=1d=1、λ=3\lambda=3、E=span⁡{v1}E=\operatorname{span}\{v_1\}、δ=2\delta=2で適用することができる。

  1. y0:=(1,0)T=(v1+v2)/2y_0:=(1,0)^{\mathsf T}=(v_1+v_2)/\sqrt2とする。Aky0=(3kv1+v2)/2=12(3k+1,3k−1)TA^ky_0=(3^kv_1+v_2)/\sqrt2=\frac12(3^k+1,3^k-1)^{\mathsf T}であり、∥Aky0∥22=(9k+1)/2\lVert A^ky_0\rVert_2^2=(9^k+1)/2であるから、定理 1.4 (1)によりyk=(3kv1+v2)/9k+1y_k=(3^kv_1+v_2)/\sqrt{9^k+1}である。yky_kのv2v_2成分とv1v_1成分の比は3−k3^{-k}であり、y1=(2,1)T/5y_1=(2,1)^{\mathsf T}/\sqrt5、μ1=14/5\mu_1=14/5である。補題 2.1 (1)と補題 2.1 (2)により dist⁡(yk,E)2=19k+1,μk=3⋅9k+19k+1,3−μk=29k+1\operatorname{dist}(y_k,E)^2=\frac1{9^k+1},\qquad\mu_k=\frac{3\cdot9^k+1}{9^k+1},\qquad3-\mu_k=\frac2{9^k+1} であり、命題 2.2 (1)の不等式∣μk−3∣≤2dist⁡(yk,E)2\lvert\mu_k-3\rvert\le2\operatorname{dist}(y_k,E)^2は等号で成り立つ。k=1,2,5k=1,2,5では3−μk=1/5, 1/41, 1/295253-\mu_k=1/5,\ 1/41,\ 1/29525である。
  2. y0:=v2y_0:=v_2ならば、命題 2.2 (3)により厳密算術ではyk=v2y_k=v_2、μk=1\mu_k=1、dist⁡(yk,E)=1\operatorname{dist}(y_k,E)=1がすべてのkkで成り立つ。
  3. binary64 の最近接丸めでs:=fl⁡(1/fl⁡(2))=0x1.6a09e667f3bccp-1s:=\operatorname{fl}(1/\operatorname{fl}(\sqrt2))=\texttt{0x1.6a09e667f3bccp-1}を計算し、y0:=(s,−s)Ty_0:=(s,-s)^{\mathsf T}から、AykAy_k、∥Ayk∥2\lVert Ay_k\rVert_2、その商、μk\mu_kを binary64 の四則演算と平方根で計算した。1≤k≤601\le k\le60で、計算したyky_kの成分は±0.7071067811865476\pm0.7071067811865476であり、二つの成分の和は00、すなわちv1v_1成分は00であった。計算したμ0\mu_0は1−2−521-2^{-52}、μk\mu_k(1≤k≤601\le k\le60)は1+2−521+2^{-52}であった。この入力では、yk=(a,−a)Ty_k=(a,-a)^{\mathsf T}からAykAy_kを計算する演算2a−a2a-a、a−2aa-2aの厳密な結果±a\pm aが binary64 の元であり、最近接丸めは符号について対称であるから、計算したyk+1y_{k+1}も(a′,−a′)T(a',-a')^{\mathsf T}の形をもつ。

3 逆反復

定義 3.1.n∈N≥1n\in\NN、A∈Cn×nA\in\C^{n\times n}とし、σ∈C\sigma\in\Cはdet⁡(A−σI)≠0\det(A-\sigma I)\ne0を満たすとする。y0∈Cny_0\in\C^nを∥y0∥2=1\lVert y_0\rVert_2=1を満たすベクトルとする。k≥0k\ge0について、zk∈Cnz_k\in\C^nを一次方程式(A−σI)zk=yk(A-\sigma I)z_k=y_kのただ一つの解とし、yk+1:=zk/∥zk∥2y_{k+1}:=z_k/\lVert z_k\rVert_2と置く。こうして定まる列(yk)(y_k)を、AAに対する シフト (shift)σ\sigma、初期ベクトルy0y_0の 逆反復 (inverse iteration) という。yk≠0y_k\ne0であるからzk≠0z_k\ne0であり、すべてのk≥0k\ge0についてyky_kが定まる。yky_kは(A−σI)−1(A-\sigma I)^{-1}に対するy0y_0からのべき乗法の第kk項に等しい。

注意 3.2.A∈Rn×nA\in\R^{n\times n}、σ∈R\sigma\in\R、y0∈Rny_0\in\R^nとし、det⁡(A−σI)≠0\det(A-\sigma I)\ne0とする。§E20.5 定理 2.5 (1)によりA−σIA-\sigma Iのピボット付き LU 分解(P,L,U)(P,L,U)が部分ピボット付き消去で得られ、§E20.5 定理 2.5 (2)により、各kkのzkz_kはLw=PykLw=Py_kの前進代入とUzk=wUz_k=wの後退代入を厳密算術で実行して得られる。§E20.5 定理 2.5 (3)により、分解は2n3/3−n2/2−n/62n^3/3-n^2/2-n/6回の四則演算を一度だけ行い、各反復の二つの代入は2n2−n2n^2-n回の四則演算を行う。

系 3.3.n∈N≥1n\in\NNとし、A∈Cn×nA\in\C^{n\times n}がCn\C^nの基底v1,…,vnv_1,\dots,v_nと複素数λ1,…,λn\lambda_1,\dots,\lambda_nについてAvi=λiviAv_i=\lambda_iv_iを満たすとする。σ∈C\sigma\in\Cはσ≠λi\sigma\ne\lambda_i(1≤i≤n1\le i\le n)を満たすとする。整数1≤d≤n1\le d\le nとλ∈C\lambda\in\Cについて、i≤di\le dならばλi=λ\lambda_i=\lambda、i>di>dならば∣λi−σ∣>∣λ−σ∣\lvert\lambda_i-\sigma\rvert>\lvert\lambda-\sigma\rvertであるとする。d<nd<nならばq:=max⁡i>d∣λ−σ∣/∣λi−σ∣q:=\max_{i>d}\lvert\lambda-\sigma\rvert/\lvert\lambda_i-\sigma\rvert、d=nd=nならばq:=0q:=0と置き、q0:=1q^0:=1とする。y0∈Cny_0\in\C^nを∥y0∥2=1\lVert y_0\rVert_2=1を満たすベクトルとし、y0=∑iciviy_0=\sum_ic_iv_i、u:=∑i≤dcivi≠0u:=\sum_{i\le d}c_iv_i\ne0、u^:=u/∥u∥2\hat u:=u/\lVert u\rVert_2とする。(yk)(y_k)をシフトσ\sigma、初期ベクトルy0y_0の逆反復とし、θk:=((λ−σ)/∣λ−σ∣)k\theta_k:=\bigl((\lambda-\sigma)/\lvert\lambda-\sigma\rvert\bigr)^kと置く。このときkkによらない実数C≥0C\ge0が存在して、すべてのk≥0k\ge0について

∥θkyk−u^∥2≤Cqk,∣yk∗Ayk−λ∣≤2C∥A∥2qk\lVert\theta_ky_k-\hat u\rVert_2\le Cq^k,\qquad\lvert y_k^*Ay_k-\lambda\rvert\le2C\lVert A\rVert_2q^k

が成り立つ。

証明.σ\sigmaはAAの固有値でないからB:=(A−σI)−1B:=(A-\sigma I)^{-1}が存在し、Bvi=(λi−σ)−1viBv_i=(\lambda_i-\sigma)^{-1}v_iである。β:=(λ−σ)−1≠0\beta:=(\lambda-\sigma)^{-1}\ne0と置くと、i≤di\le dならばBBのviv_iに対する固有値はβ\betaである。各i>di>dについて∣(λi−σ)−1∣/∣β∣=∣λ−σ∣/∣λi−σ∣<1\lvert(\lambda_i-\sigma)^{-1}\rvert/\lvert\beta\rvert=\lvert\lambda-\sigma\rvert/\lvert\lambda_i-\sigma\rvert<1であるから、BB、β\betaは定理 1.4の仮定を満たし、同定理のqqは、d<nd<nならばmax⁡i>d∣λ−σ∣/∣λi−σ∣\max_{i>d}\lvert\lambda-\sigma\rvert/\lvert\lambda_i-\sigma\rvert、d=nd=nならば00であって、本系のqqに一致する。また∣β∣k/βk=θk\lvert\beta\rvert^k/\beta^k=\theta_kである。定義 3.1により(yk)(y_k)はBBに対するy0y_0からのべき乗法であるから、定理 1.4 (2)をBBに適用して第一の不等式を得る。Au^=λu^A\hat u=\lambda\hat uであるから、補題 1.2をAA、z=ykz=y_k、θ=θk\theta=\theta_kに適用して第二の不等式を得る。▨

例 3.4. 固有値が11、0.990.99、0.50.5である対角化可能な33次の行列AAを考える。べき乗法について定理 1.4のqqは0.990.99であり、評価の因子qkq^kが10−810^{-8}以下になる最小のkkは18331833である。シフトσ:=1.001\sigma:=1.001の逆反復について系 3.3のqqは0.001/min⁡{0.011,0.501}=1/110.001/\min\{0.011,0.501\}=1/11であり、qk≤10−8q^k\le10^{-8}となる最小のkkは88である。

4 実対称行列の固有値の最小最大表示

補題 4.1.n∈N≥1n\in\NNとし、A∈Rn×nA\in\R^{n\times n}はAT=AA^{\mathsf T}=Aを満たすとする。S⊂RnS\subset\R^nをS≠{0}S\ne\{0\}を満たす部分空間とすると、集合{xTAx∣x∈S, ∥x∥2=1}\{x^{\mathsf T}Ax\mid x\in S,\ \lVert x\rVert_2=1\}は最大値と最小値をもつ。

証明.k:=dim⁡Sk:=\dim Sとし、SSの正規直交基底w1,…,wkw_1,\dots,w_kを Gram–Schmidt の直交化でとり、W:=(w1 ⋯ wk)∈Rn×kW:=(w_1\ \cdots\ w_k)\in\R^{n\times k}と置く。WTW=IkW^{\mathsf T}W=I_kであるから、z∈Rkz\in\R^kについて∥Wz∥2=∥z∥2\lVert Wz\rVert_2=\lVert z\rVert_2であり、{x∈S∣∥x∥2=1}={Wz∣z∈Rk, ∥z∥2=1}\{x\in S\mid\lVert x\rVert_2=1\}=\{Wz\mid z\in\R^k,\ \lVert z\rVert_2=1\}である。B:=WTAWB:=W^{\mathsf T}AWはBT=BB^{\mathsf T}=Bを満たし、(Wz)TA(Wz)=zTBz(Wz)^{\mathsf T}A(Wz)=z^{\mathsf T}Bzである。補題 2.1 (3)をBBに適用して正規直交基底b1,…,bkb_1,\dots,b_kと実数β1≤⋯≤βk\beta_1\le\dots\le\beta_kをとると、補題 2.1 (1)により∥z∥2=1\lVert z\rVert_2=1のときzTBz=∑jβj(bjTz)2∈[β1,βk]z^{\mathsf T}Bz=\sum_j\beta_j(b_j^{\mathsf T}z)^2\in[\beta_1,\beta_k]であり、z=b1z=b_1、z=bkz=b_kでそれぞれβ1\beta_1、βk\beta_kに等しい。▨

定理 4.2 (Courant–Fischer の定理).n∈N≥1n\in\NNとし、A∈Rn×nA\in\R^{n\times n}はAT=AA^{\mathsf T}=Aを満たすとする。λ1≤⋯≤λn\lambda_1\le\dots\le\lambda_nをdet⁡(tI−A)=∏i(t−λi)\det(tI-A)=\prod_i(t-\lambda_i)を満たす実数とする(補題 2.1 (3)により存在する)。任意の整数1≤k≤n1\le k\le nに対して

λk=min⁡S⊂Rndim⁡S=k max⁡x∈S∥x∥2=1xTAx=max⁡S⊂Rndim⁡S=n−k+1 min⁡x∈S∥x∥2=1xTAx\lambda_k=\min_{\substack{S\subset\R^n\\\dim S=k}}\ \max_{\substack{x\in S\\\lVert x\rVert_2=1}}x^{\mathsf T}Ax=\max_{\substack{S\subset\R^n\\\dim S=n-k+1}}\ \min_{\substack{x\in S\\\lVert x\rVert_2=1}}x^{\mathsf T}Ax

が成り立つ。ここでSSは部分空間を動き、内側の最大値・最小値は補題 4.1により存在し、外側の最小値・最大値の存在も主張に含む。

証明.補題 2.1 (3)により、Rn\R^nの正規直交基底q1,…,qnq_1,\dots,q_nでAqi=λiqiAq_i=\lambda_iq_iを満たすものがとれる。det⁡(tI−A)\det(tI-A)の根を重複度を込めて非減少に並べた列は一つに定まるので、ここでのλi\lambda_iは主張のλi\lambda_iに一致する。x∈Rnx\in\R^nについてxTAx=∑iλi(qiTx)2x^{\mathsf T}Ax=\sum_i\lambda_i(q_i^{\mathsf T}x)^2である(補題 2.1 (1))。

SSをdim⁡S=k\dim S=kを満たす部分空間とし、T:=span⁡{qk,…,qn}T:=\operatorname{span}\{q_k,\dots,q_n\}と置く。dim⁡(S∩T)=dim⁡S+dim⁡T−dim⁡(S+T)≥k+(n−k+1)−n=1\dim(S\cap T)=\dim S+\dim T-\dim(S+T)\ge k+(n-k+1)-n=1であるから、∥x∥2=1\lVert x\rVert_2=1を満たすx∈S∩Tx\in S\cap Tがある。i<ki<kについてqiTx=0q_i^{\mathsf T}x=0であるからxTAx=∑i≥kλi(qiTx)2≥λk∑i≥k(qiTx)2=λkx^{\mathsf T}Ax=\sum_{i\ge k}\lambda_i(q_i^{\mathsf T}x)^2\ge\lambda_k\sum_{i\ge k}(q_i^{\mathsf T}x)^2=\lambda_kであり、SS上の最大値はλk\lambda_k以上である。S0:=span⁡{q1,…,qk}S_0:=\operatorname{span}\{q_1,\dots,q_k\}の単位ベクトルxxについてはxTAx=∑i≤kλi(qiTx)2≤λkx^{\mathsf T}Ax=\sum_{i\le k}\lambda_i(q_i^{\mathsf T}x)^2\le\lambda_kであり、x=qkx=q_kで等号が成り立つので、S0S_0上の最大値はλk\lambda_kである。したがって最小最大表示の外側の最小値は存在してλk\lambda_kに等しい。

−A-Aは対称であり、det⁡(tI+A)=∏i(t+λi)\det(tI+A)=\prod_i(t+\lambda_i)であるから、−A-Aについて非減少に並べた列の第jj項は−λn+1−j-\lambda_{n+1-j}である。最小最大表示を−A-Aとj:=n−k+1j:=n-k+1に適用すると

−λk=min⁡dim⁡S=n−k+1 max⁡x∈S, ∥x∥2=1(−xTAx)=−max⁡dim⁡S=n−k+1 min⁡x∈S, ∥x∥2=1xTAx-\lambda_k=\min_{\dim S=n-k+1}\ \max_{x\in S,\ \lVert x\rVert_2=1}\bigl(-x^{\mathsf T}Ax\bigr)=-\max_{\dim S=n-k+1}\ \min_{x\in S,\ \lVert x\rVert_2=1}x^{\mathsf T}Ax

であり、最大最小表示を得る。▨

5 残差と固有値間隔

命題 5.1.n∈N≥1n\in\NN、A∈Cn×nA\in\C^{n\times n}とし、v1,…,vnv_1,\dots,v_nと実数λ1,…,λn\lambda_1,\dots,\lambda_nは補題 2.1の仮定を満たすとする。y∈Cny\in\C^nを∥y∥2=1\lVert y\rVert_2=1を満たすベクトル、μ∈C\mu\in\Cとし、r:=Ay−μyr:=Ay-\mu yと置く。

  1. min⁡i∣λi−μ∣≤∥r∥2\min_i\lvert\lambda_i-\mu\rvert\le\lVert r\rVert_2が成り立つ。
  2. λ∈{λ1,…,λn}\lambda\in\{\lambda_1,\dots,\lambda_n\}とし、E:=span⁡{vi∣λi=λ}E:=\operatorname{span}\{v_i\mid\lambda_i=\lambda\}と置く。λi≠λ\lambda_i\ne\lambdaを満たすiiが存在し、γ:=min⁡{∣λi−μ∣∣λi≠λ}\gamma:=\min\{\lvert\lambda_i-\mu\rvert\mid\lambda_i\ne\lambda\}がγ>0\gamma>0を満たすならば、dist⁡(y,E)≤∥r∥2/γ\operatorname{dist}(y,E)\le\lVert r\rVert_2/\gammaが成り立つ。
  3. (2)の仮定に加えてμ=y∗Ay\mu=y^*Ayであるとし、δ:=max⁡i∣λi−λ∣\delta:=\max_i\lvert\lambda_i-\lambda\rvertと置くと、∣μ−λ∣≤δ∥r∥22/γ2\lvert\mu-\lambda\rvert\le\delta\lVert r\rVert_2^2/\gamma^2が成り立つ。

証明.ci:=vi∗yc_i:=v_i^*yと置く。補題 2.1 (1)により∑i∣ci∣2=1\sum_i\lvert c_i\rvert^2=1、∥r∥22=∑i∣λi−μ∣2∣ci∣2\lVert r\rVert_2^2=\sum_i\lvert\lambda_i-\mu\rvert^2\lvert c_i\rvert^2である。

(1)を示す。m:=min⁡i∣λi−μ∣m:=\min_i\lvert\lambda_i-\mu\rvertと置くと∥r∥22≥m2∑i∣ci∣2=m2\lVert r\rVert_2^2\ge m^2\sum_i\lvert c_i\rvert^2=m^2である。

(2)を示す。∥r∥22≥∑λi≠λ∣λi−μ∣2∣ci∣2≥γ2∑λi≠λ∣ci∣2\lVert r\rVert_2^2\ge\sum_{\lambda_i\ne\lambda}\lvert\lambda_i-\mu\rvert^2\lvert c_i\rvert^2\ge\gamma^2\sum_{\lambda_i\ne\lambda}\lvert c_i\rvert^2であり、補題 2.1 (2)をJ={i∣λi=λ}J=\{i\mid\lambda_i=\lambda\}に適用すると右辺はγ2dist⁡(y,E)2\gamma^2\operatorname{dist}(y,E)^2である。

(3)を示す。番号を付け替えて命題 2.2 (1)を適用すると∣μ−λ∣≤δdist⁡(y,E)2\lvert\mu-\lambda\rvert\le\delta\operatorname{dist}(y,E)^2であり、(2)によりdist⁡(y,E)2≤∥r∥22/γ2\operatorname{dist}(y,E)^2\le\lVert r\rVert_2^2/\gamma^2である。▨

注意 5.2.命題 5.1の記号でΔA:=−ry∗\Delta A:=-ry^*と置くと、(A+ΔA)y=Ay−r=μy(A+\Delta A)y=Ay-r=\mu yであり、μ\muとyyはA+ΔAA+\Delta Aの固有値と固有ベクトルである。任意のh∈Cnh\in\C^nに対して∥ry∗h∥2=∣y∗h∣∥r∥2≤∥r∥2∥h∥2\lVert ry^*h\rVert_2=\lvert y^*h\rvert\lVert r\rVert_2\le\lVert r\rVert_2\lVert h\rVert_2であり、h=yh=yで等号が成り立つので∥ΔA∥2=∥r∥2\lVert\Delta A\rVert_2=\lVert r\rVert_2である。命題 5.1の仮定の下で反復を∥r∥2≤τ\lVert r\rVert_2\le\tauで止めるならば、命題 5.1 (1)によりμ\muから距離τ\tau以内にAAの固有値があり、命題 5.1 (2)によりdist⁡(y,E)≤τ/γ\operatorname{dist}(y,E)\le\tau/\gammaである。

例 5.3.M>0M>0とし、

A:=(00001M002),y:=(1,M,−1)TM2+2,μ:=0A:=\begin{pmatrix}0&0&0\\0&1&M\\0&0&2\end{pmatrix},\qquad y:=\frac{(1,M,-1)^{\mathsf T}}{\sqrt{M^2+2}},\qquad\mu:=0

と置く。AAの固有値は0,1,20,1,2であり、固有空間はそれぞれspan⁡{e1}\operatorname{span}\{e_1\}、span⁡{e2}\operatorname{span}\{e_2\}、span⁡{(0,M,1)T}\operatorname{span}\{(0,M,1)^{\mathsf T}\}である。AAは対角化可能であるが、各固有空間は一次元でありe2∗(0,M,1)T=M≠0e_2^*(0,M,1)^{\mathsf T}=M\ne0であるから、固有ベクトルからなる正規直交基底は存在せず、命題 5.1の仮定を満たさない。A(1,M,−1)T=(0,0,−2)TA(1,M,-1)^{\mathsf T}=(0,0,-2)^{\mathsf T}であるからr=Ay−μyr=Ay-\mu yは∥r∥2=2/M2+2\lVert r\rVert_2=2/\sqrt{M^2+2}を満たす。λ:=0\lambda:=0、E:=span⁡{e1}E:=\operatorname{span}\{e_1\}について、μ\muと他の固有値との間隔はγ=min⁡{1,2}=1\gamma=\min\{1,2\}=1であり、

dist⁡(y,E)=M2+1M2+2,∥r∥2γ=2M2+2\operatorname{dist}(y,E)=\sqrt{\frac{M^2+1}{M^2+2}},\qquad\frac{\lVert r\rVert_2}{\gamma}=\frac2{\sqrt{M^2+2}}

である。M>3M>\sqrt3ならばM2+1>2\sqrt{M^2+1}>2であるからdist⁡(y,E)>∥r∥2/γ\operatorname{dist}(y,E)>\lVert r\rVert_2/\gammaである。M=100M=100では∥r∥2=0.019998…\lVert r\rVert_2=0.019998\ldots、dist⁡(y,E)=0.99995…\operatorname{dist}(y,E)=0.99995\ldotsである。固有値11の固有空間についてはdist⁡(y,span⁡{e2})=2/M2+2\operatorname{dist}(y,\operatorname{span}\{e_2\})=\sqrt2/\sqrt{M^2+2}であり、M=100M=100では0.014140…0.014140\ldotsである。

6 Rayleigh 商反復

定義 6.1.n∈N≥1n\in\NNとし、A∈Rn×nA\in\R^{n\times n}はAT=AA^{\mathsf T}=Aを満たすとする。y0∈Rny_0\in\R^nを∥y0∥2=1\lVert y_0\rVert_2=1を満たすベクトルとする。k≥0k\ge0についてyky_kが定まっているとき、μk:=ykTAyk\mu_k:=y_k^{\mathsf T}Ay_k、rk:=Ayk−μkykr_k:=Ay_k-\mu_ky_kと置く。det⁡(A−μkI)≠0\det(A-\mu_kI)\ne0ならば、zk∈Rnz_k\in\R^nを(A−μkI)zk=yk(A-\mu_kI)z_k=y_kのただ一つの解とし、yk+1:=zk/∥zk∥2y_{k+1}:=z_k/\lVert z_k\rVert_2と置く。det⁡(A−μkI)=0\det(A-\mu_kI)=0ならばyk+1y_{k+1}を定めず、反復は第kk段で 停止 (termination) するという。こうして定まる(yk)(y_k)と(μk)(\mu_k)を、y0y_0からの Rayleigh 商反復 (Rayleigh quotient iteration) という。

注意 6.2.定義 6.1の反復が第kk段で停止するとき、μk\mu_kはAAの固有値である。yky_kがAAの固有ベクトルであることとrk=0r_k=0であることは同値である。実際、Ayk=λ′ykAy_k=\lambda'y_kならばμk=λ′ykTyk=λ′\mu_k=\lambda'y_k^{\mathsf T}y_k=\lambda'であり、rk=0r_k=0ならばAyk=μkykAy_k=\mu_ky_kである。停止してもrk=0r_k=0とは限らない。A:=diag⁡(0,−1,1)A:=\operatorname{diag}(0,-1,1)、y0:=(2,1,1)T/6y_0:=(2,1,1)^{\mathsf T}/\sqrt6ではμ0=(−1+1)/6=0\mu_0=(-1+1)/6=0であり、AAは正則でないので反復は第00段で停止するが、r0=(0,−1,1)T/6≠0r_0=(0,-1,1)^{\mathsf T}/\sqrt6\ne0である。

定理 6.3.n≥2n\ge2とし、A∈Rn×nA\in\R^{n\times n}はAT=AA^{\mathsf T}=Aを満たすとする。λ\lambdaをdet⁡(tI−A)\det(tI-A)の単根であるAAの固有値、v∈Rnv\in\R^nをAv=λvAv=\lambda v、∥v∥2=1\lVert v\rVert_2=1を満たすベクトルとする。Λ\LambdaをAAの固有値の集合とし、g:=min⁡{∣λ′−λ∣∣λ′∈Λ, λ′≠λ}g:=\min\{\lvert\lambda'-\lambda\rvert\mid\lambda'\in\Lambda,\ \lambda'\ne\lambda\}、δ:=max⁡{∣λ′−λ∣∣λ′∈Λ}\delta:=\max\{\lvert\lambda'-\lambda\rvert\mid\lambda'\in\Lambda\}と置く。∥y∥2=1\lVert y\rVert_2=1かつvTy≠0v^{\mathsf T}y\ne0を満たすy∈Rny\in\R^nに対して

t(y):=dist⁡(y,span⁡{v})∣vTy∣t(y):=\frac{\operatorname{dist}(y,\operatorname{span}\{v\})}{\lvert v^{\mathsf T}y\rvert}

と置く。y0∈Rny_0\in\R^nは∥y0∥2=1\lVert y_0\rVert_2=1、vTy0≠0v^{\mathsf T}y_0\ne0、δt(y0)2≤g/2\delta t(y_0)^2\le g/2を満たすとし、(yk)(y_k)、(μk)(\mu_k)をy0y_0からの Rayleigh 商反復とする。yky_kが定まる任意のk≥0k\ge0について次が成り立つ。

  1. vTyk≠0v^{\mathsf T}y_k\ne0、δt(yk)2≤g/2\delta t(y_k)^2\le g/2であり、∣μk−λ∣≤δdist⁡(yk,span⁡{v})2\lvert\mu_k-\lambda\rvert\le\delta\operatorname{dist}(y_k,\operatorname{span}\{v\})^2である。
  2. 反復が第kk段で停止するならば、μk=λ\mu_k=\lambdaである。
  3. 反復が第kk段で停止しないならば、vTyk+1≠0v^{\mathsf T}y_{k+1}\ne0であり t(yk+1)≤δ t(yk)3g−δt(yk)2≤2δgt(yk)3t(y_{k+1})\le\frac{\delta\,t(y_k)^3}{g-\delta t(y_k)^2}\le\frac{2\delta}{g}t(y_k)^3 が成り立つ。
  4. 反復が第kk段で停止しないならば、dist⁡(yk+1,span⁡{v})≤(42 δ/g)dist⁡(yk,span⁡{v})3\operatorname{dist}(y_{k+1},\operatorname{span}\{v\})\le(4\sqrt2\,\delta/g)\operatorname{dist}(y_k,\operatorname{span}\{v\})^3が成り立つ。
  5. ek:=(2δ/g)t(yk)2e_k:=(2\delta/g)t(y_k)^2と置くとek≤e03ke_k\le e_0^{3^k}である。とくにδt(y0)2<g/2\delta t(y_0)^2<g/2であり、反復がどの段でも停止しないならば、t(yk)→0t(y_k)\to0、μk→λ\mu_k\to\lambdaである。

証明.補題 2.1 (3)によりRn\R^nの正規直交基底q1,…,qnq_1,\dots,q_nと実数λ1,…,λn\lambda_1,\dots,\lambda_nでAqi=λiqiAq_i=\lambda_iq_i、det⁡(tI−A)=∏i(t−λi)\det(tI-A)=\prod_i(t-\lambda_i)を満たすものをとる。λ\lambdaは単根であるからλi=λ\lambda_i=\lambdaを満たすiiはただ一つであり、番号を付け替えてそれをi=1i=1とする。補題 2.1 (1)によりker⁡(A−λI)=span⁡{q1}\ker(A-\lambda I)=\operatorname{span}\{q_1\}であるからq1=±vq_1=\pm vであり、q1q_1をvvに置き換える。i≥2i\ge2についてλi≠λ\lambda_i\ne\lambdaであり、g≤∣λi−λ∣≤δg\le\lvert\lambda_i-\lambda\rvert\le\deltaである。∥y∥2=1\lVert y\rVert_2=1を満たすy∈Rny\in\R^nについてci(y):=qiTyc_i(y):=q_i^{\mathsf T}yと置く。補題 2.1 (2)をJ={1}J=\{1\}に適用するとs(y):=dist⁡(y,span⁡{v})s(y):=\operatorname{dist}(y,\operatorname{span}\{v\})はs(y)2=∑i≥2ci(y)2=1−c1(y)2s(y)^2=\sum_{i\ge2}c_i(y)^2=1-c_1(y)^2を満たし、c1(y)≠0c_1(y)\ne0ならばt(y)2=∑i≥2ci(y)2/c1(y)2t(y)^2=\sum_{i\ge2}c_i(y)^2/c_1(y)^2、s(y)≤t(y)s(y)\le t(y)である。z∈Rnz\in\R^nがq1Tz≠0q_1^{\mathsf T}z\ne0を満たすならば、t(z/∥z∥2)2=∑i≥2(qiTz)2/(q1Tz)2t(z/\lVert z\rVert_2)^2=\sum_{i\ge2}(q_i^{\mathsf T}z)^2/(q_1^{\mathsf T}z)^2である。

yky_kが定まりvTyk≠0v^{\mathsf T}y_k\ne0かつδt(yk)2≤g/2\delta t(y_k)^2\le g/2であるという条件を(Hk)(\mathrm H_k)と書く。(H0)(\mathrm H_0)は仮定である。(Hk)(\mathrm H_k)を仮定し、ci:=ci(yk)c_i:=c_i(y_k)、sk:=s(yk)s_k:=s(y_k)、tk:=t(yk)t_k:=t(y_k)と置く。

命題 2.2 (1)をd=1d=1、E=span⁡{v}E=\operatorname{span}\{v\}に適用すると∣μk−λ∣≤δsk2≤δtk2≤g/2\lvert\mu_k-\lambda\rvert\le\delta s_k^2\le\delta t_k^2\le g/2であり、(1)が成り立つ。i≥2i\ge2について

∣λi−μk∣≥∣λi−λ∣−∣λ−μk∣≥g−δtk2≥g/2>0\lvert\lambda_i-\mu_k\rvert\ge\lvert\lambda_i-\lambda\rvert-\lvert\lambda-\mu_k\rvert\ge g-\delta t_k^2\ge g/2>0

である。反復が第kk段で停止するならばμk\mu_kはλ1,…,λn\lambda_1,\dots,\lambda_nのいずれかに等しく、上の不等式によりi≥2i\ge2のλi\lambda_iには等しくないので、μk=λ1=λ\mu_k=\lambda_1=\lambdaであり、(2)が成り立つ。

反復が第kk段で停止しないとする。μk≠λi\mu_k\ne\lambda_i(1≤i≤n1\le i\le n)であり、(A−μkI)−1qi=(λi−μk)−1qi(A-\mu_kI)^{-1}q_i=(\lambda_i-\mu_k)^{-1}q_iであるからzk=∑ici(λi−μk)−1qiz_k=\sum_ic_i(\lambda_i-\mu_k)^{-1}q_iである。q1Tzk=c1/(λ−μk)≠0q_1^{\mathsf T}z_k=c_1/(\lambda-\mu_k)\ne0であるからvTyk+1≠0v^{\mathsf T}y_{k+1}\ne0であり、

tk+12=∑i≥2ci2(λi−μk)−2c12(λ−μk)−2≤(λ−μk)2(g−δtk2)2⋅∑i≥2ci2c12=(λ−μk)2(g−δtk2)2tk2t_{k+1}^2=\frac{\sum_{i\ge2}c_i^2(\lambda_i-\mu_k)^{-2}}{c_1^2(\lambda-\mu_k)^{-2}}\le\frac{(\lambda-\mu_k)^2}{(g-\delta t_k^2)^2}\cdot\frac{\sum_{i\ge2}c_i^2}{c_1^2}=\frac{(\lambda-\mu_k)^2}{(g-\delta t_k^2)^2}t_k^2

である。∣λ−μk∣≤δtk2\lvert\lambda-\mu_k\rvert\le\delta t_k^2とg−δtk2≥g/2g-\delta t_k^2\ge g/2により(3)が成り立つ。(2δ/g)tk2≤1(2\delta/g)t_k^2\le1であるからtk+1≤tkt_{k+1}\le t_kであり、δtk+12≤g/2\delta t_{k+1}^2\le g/2であるから(Hk+1)(\mathrm H_{k+1})が成り立つ。δ≥g\delta\ge gであるからtk2≤g/(2δ)≤1/2t_k^2\le g/(2\delta)\le1/2であり、sk2=tk2/(1+tk2)s_k^2=t_k^2/(1+t_k^2)からtk2=sk2/(1−sk2)≤2sk2t_k^2=s_k^2/(1-s_k^2)\le2s_k^2である。sk+1≤tk+1≤(2δ/g)tk3≤(2δ/g)22 sk3s_{k+1}\le t_{k+1}\le(2\delta/g)t_k^3\le(2\delta/g)2\sqrt2\,s_k^3であり、(4)が成り立つ。kkに関する帰納法により、yky_kが定まる任意のkkについて(Hk)(\mathrm H_k)と(1)から(4)が成り立つ。

(5)を示す。(3)によりek+1=(2δ/g)tk+12≤(2δ/g)3tk6=ek3e_{k+1}=(2\delta/g)t_{k+1}^2\le(2\delta/g)^3t_k^6=e_k^3であり、kkに関する帰納法でek≤e03ke_k\le e_0^{3^k}である。δt02<g/2\delta t_0^2<g/2ならば0≤e0<10\le e_0<1であるからek→0e_k\to0、tk→0t_k\to0であり、(1)とsk≤tks_k\le t_kにより∣μk−λ∣≤δtk2→0\lvert\mu_k-\lambda\rvert\le\delta t_k^2\to0である。▨

7 正の確率行列への適用

例 7.1.n∈N≥1n\in\NNとし、Q=(qij)∈Rn×nQ=(q_{ij})\in\R^{n\times n}を確率行列(成分が非負で、各列の成分の和が11である行列)、0<ε≤10<\varepsilon\le1、1:=(1,…,1)T∈Rn\mathbf 1:=(1,\dots,1)^{\mathsf T}\in\R^nとし、P:=(1−ε)Q+(ε/n)11TP:=(1-\varepsilon)Q+(\varepsilon/n)\mathbf 1\mathbf 1^{\mathsf T}と置く。Δ:={x∈Rn∣x≥0, ∑ixi=1}\Delta:=\{x\in\R^n\mid x\ge0,\ \sum_ix_i=1\}とする。PPの各成分は(1−ε)qij+ε/n≥ε/n>0(1-\varepsilon)q_{ij}+\varepsilon/n\ge\varepsilon/n>0であり、第jj列の和は(1−ε)+ε=1(1-\varepsilon)+\varepsilon=1であるから、PPは成分がすべて正の確率行列である。§D3.19 定理 3.2によりPPの定常分布π∈Δ\pi\in\Deltaがただ一つ存在する。δP:=min⁡i,j(P)ij≥ε/n\delta_P:=\min_{i,j}(P)_{ij}\ge\varepsilon/nであるから1−nδP≤1−ε1-n\delta_P\le1-\varepsilonであり、§D3.19 定理 4.2により、任意のp∈Δp\in\Deltaとk≥0k\ge0について

∥Pkp−π∥1≤(1−ε)k∥p−π∥1≤2(1−ε)k\lVert P^kp-\pi\rVert_1\le(1-\varepsilon)^k\lVert p-\pi\rVert_1\le2(1-\varepsilon)^k

である。x∈Δx\in\DeltaならばPx≥0Px\ge0、∑i(Px)i=∑jxj=1\sum_i(Px)_i=\sum_jx_j=1であるからPkp∈ΔP^kp\in\Delta、Pkp≠0P^kp\ne0である。PPに対するy0:=p/∥p∥2y_0:=p/\lVert p\rVert_2からのべき乗法について、yk=Pkp/∥Pkp∥2y_k=P^kp/\lVert P^kp\rVert_2ならばPyk=Pk+1p/∥Pkp∥2≠0Py_k=P^{k+1}p/\lVert P^kp\rVert_2\ne0、yk+1=Pk+1p/∥Pk+1p∥2y_{k+1}=P^{k+1}p/\lVert P^{k+1}p\rVert_2であるから、すべてのkkについてyk=Pkp/∥Pkp∥2y_k=P^kp/\lVert P^kp\rVert_2である。補題 1.3と∥π∥2≥∥π∥1/n=1/n\lVert\pi\rVert_2\ge\lVert\pi\rVert_1/\sqrt n=1/\sqrt n、∥⋅∥2≤∥⋅∥1\lVert\cdot\rVert_2\le\lVert\cdot\rVert_1により

∥yk−π∥π∥2∥2≤2∥Pkp−π∥2∥π∥2≤4n (1−ε)k\left\lVert y_k-\frac{\pi}{\lVert\pi\rVert_2}\right\rVert_2\le\frac{2\lVert P^kp-\pi\rVert_2}{\lVert\pi\rVert_2}\le4\sqrt n\,(1-\varepsilon)^k

である。PPは対角化可能とは限らず、そのとき定理 1.4の仮定は満たされない。n=3n=3、Q:=(000100011)Q:=\begin{pmatrix}0&0&0\\1&0&0\\0&1&1\end{pmatrix}、0<ε<10<\varepsilon<1、w:=e1−e2w:=e_1-e_2とすると、1Tw=0\mathbf 1^{\mathsf T}w=0、1T(e2−e3)=0\mathbf 1^{\mathsf T}(e_2-e_3)=0からPw=(1−ε)(e2−e3)≠0Pw=(1-\varepsilon)(e_2-e_3)\ne0、P2w=(1−ε)2(e3−e3)=0P^2w=(1-\varepsilon)^2(e_3-e_3)=0である。P=VDV−1P=VDV^{-1}(DDは対角行列)ならば、P2x=0P^2x=0からD2V−1x=0D^2V^{-1}x=0、DV−1x=0DV^{-1}x=0、Px=0Px=0が従うので、PPは対角化可能でない。

8 演習

問題 8.1.補題 1.3の証明を完成させよ。

解答.

∥a∥a∥2−b∥b∥2∥2≤∥a∥a∥2−a∥b∥2∥2+∥a∥b∥2−b∥b∥2∥2\left\lVert\frac{a}{\lVert a\rVert_2}-\frac{b}{\lVert b\rVert_2}\right\rVert_2\le\left\lVert\frac{a}{\lVert a\rVert_2}-\frac{a}{\lVert b\rVert_2}\right\rVert_2+\left\lVert\frac{a}{\lVert b\rVert_2}-\frac{b}{\lVert b\rVert_2}\right\rVert_2である。右辺の第一項は∥a∥2∣∥a∥2−1−∥b∥2−1∣=∣∥b∥2−∥a∥2∣/∥b∥2\lVert a\rVert_2\bigl\lvert\lVert a\rVert_2^{-1}-\lVert b\rVert_2^{-1}\bigr\rvert=\bigl\lvert\lVert b\rVert_2-\lVert a\rVert_2\bigr\rvert/\lVert b\rVert_2に等しく、三角不等式により∣∥b∥2−∥a∥2∣≤∥a−b∥2\bigl\lvert\lVert b\rVert_2-\lVert a\rVert_2\bigr\rvert\le\lVert a-b\rVert_2であるから∥a−b∥2/∥b∥2\lVert a-b\rVert_2/\lVert b\rVert_2以下である。第二項は∥a−b∥2/∥b∥2\lVert a-b\rVert_2/\lVert b\rVert_2に等しい。二つを加えて主張の不等式を得る。▨

問題 8.2.A:=diag⁡(0,1)∈R2×2A:=\operatorname{diag}(0,1)\in\R^{2\times2}、t>0t>0、y0:=(1,t)T/1+t2y_0:=(1,t)^{\mathsf T}/\sqrt{1+t^2}とし、(yk)(y_k)、(μk)(\mu_k)をy0y_0からの Rayleigh 商反復(定義 6.1)とする。反復が第00段で停止せずy1=(−1,t3)T/1+t6y_1=(-1,t^3)^{\mathsf T}/\sqrt{1+t^6}であること、したがって第22成分と第11成分の比がttから−t3-t^3に移ることを示せ。さらにdist⁡(y1,span⁡{e1})≤2dist⁡(y0,span⁡{e1})3\operatorname{dist}(y_1,\operatorname{span}\{e_1\})\le2\operatorname{dist}(y_0,\operatorname{span}\{e_1\})^3と∥y1−e1∥2>2>∥y0−e1∥2\lVert y_1-e_1\rVert_2>\sqrt2>\lVert y_0-e_1\rVert_2を示せ。

解答.

μ0=y0TAy0=t2/(1+t2)\mu_0=y_0^{\mathsf T}Ay_0=t^2/(1+t^2)であり、A−μ0I=diag⁡(−t2/(1+t2), 1/(1+t2))A-\mu_0I=\operatorname{diag}\bigl(-t^2/(1+t^2),\,1/(1+t^2)\bigr)の対角成分はt>0t>0によりどちらも00でないから、det⁡(A−μ0I)≠0\det(A-\mu_0I)\ne0であり、反復は第00段で停止しない。(A−μ0I)z0=y0(A-\mu_0I)z_0=y_0の解は

z0=(−1+t2t2⋅11+t2, (1+t2)⋅t1+t2)T=1+t2t2 (−1,t3)Tz_0=\left(-\frac{1+t^2}{t^2}\cdot\frac1{\sqrt{1+t^2}},\ (1+t^2)\cdot\frac t{\sqrt{1+t^2}}\right)^{\mathsf T}=\frac{\sqrt{1+t^2}}{t^2}\,(-1,t^3)^{\mathsf T}

であり、1+t2/t2>0\sqrt{1+t^2}/t^2>0であるからy1=z0/∥z0∥2=(−1,t3)T/1+t6y_1=z_0/\lVert z_0\rVert_2=(-1,t^3)^{\mathsf T}/\sqrt{1+t^6}である。y0y_0の成分の比はtt、y1y_1の成分の比はt3/(−1)=−t3t^3/(-1)=-t^3である。e1,e2e_1,e_2はAAの固有ベクトルからなる正規直交基底であるから、補題 2.1 (2)をJ={1}J=\{1\}に適用すると、∥y∥2=1\lVert y\rVert_2=1を満たすy∈R2y\in\R^2についてdist⁡(y,span⁡{e1})=∣e2Ty∣\operatorname{dist}(y,\operatorname{span}\{e_1\})=\lvert e_2^{\mathsf T}y\rvertである。よってdist⁡(y0,span⁡{e1})=t/1+t2\operatorname{dist}(y_0,\operatorname{span}\{e_1\})=t/\sqrt{1+t^2}、dist⁡(y1,span⁡{e1})=t3/1+t6\operatorname{dist}(y_1,\operatorname{span}\{e_1\})=t^3/\sqrt{1+t^6}であり、

dist⁡(y1,span⁡{e1})2dist⁡(y0,span⁡{e1})6=(1+t2)31+t6\frac{\operatorname{dist}(y_1,\operatorname{span}\{e_1\})^2}{\operatorname{dist}(y_0,\operatorname{span}\{e_1\})^6}=\frac{(1+t^2)^3}{1+t^6}

である。x:=t2x:=t^2と置くと4(1+x3)−(1+x)3=3(1−x)2(1+x)≥04(1+x^3)-(1+x)^3=3(1-x)^2(1+x)\ge0であるから右辺は44以下であり、dist⁡(y1,span⁡{e1})≤2dist⁡(y0,span⁡{e1})3\operatorname{dist}(y_1,\operatorname{span}\{e_1\})\le2\operatorname{dist}(y_0,\operatorname{span}\{e_1\})^3を得る。∥y∥2=1\lVert y\rVert_2=1を満たすyyについて∥y−e1∥22=2−2e1Ty\lVert y-e_1\rVert_2^2=2-2e_1^{\mathsf T}yであるから、∥y1−e1∥22=2+2/1+t6>2\lVert y_1-e_1\rVert_2^2=2+2/\sqrt{1+t^6}>2、∥y0−e1∥22=2−2/1+t2<2\lVert y_0-e_1\rVert_2^2=2-2/\sqrt{1+t^2}<2であり、∥y1−e1∥2>2>∥y0−e1∥2\lVert y_1-e_1\rVert_2>\sqrt2>\lVert y_0-e_1\rVert_2である。定理 6.3の記号ではλ=0\lambda=0、v=e1v=e_1、g=δ=1g=\delta=1、t(y0)=tt(y_0)=tであり、仮定δt(y0)2≤g/2\delta t(y_0)^2\le g/2はt≤1/2t\le1/\sqrt2と同値である。▨

前提記事