• 検索結果がありません。

第 3 章 ガウス – ニュートン法による位置推定 27

3.2 非線形最小二乗問題

磁界センサが立方体領域の内部のある位置x= (x1, x2, x3)に,任意の姿勢で置かれ ているとする.局所座標系で観測した参照磁界ベクトルHU1,HU3,HG3 の実測値から,

位置関数ベクトルp(x) = (p1(x), p2(x), p3(x))の値を式(2.26),(2.29),(2.24)により 計算する.これを位置関数ベクトルの実測値とみなしてpˆ = (ˆp1, pˆ2, pˆ3)で表すとき,位 置xは非線形方程式系(2.33)の解である.pˆが誤差を含まなければ,pˆはM を定義域 とするxの関数p(x)の値域に含まれるはずである.すなわち,方程式系(2.33)の解は 必ず存在し,ニュートン–ラプソン法などの数値解法を用いて,xの数値解を求めること ができる.

位置を正しく推定するためには,非線形方程式系の解をつねに一意に決定できるよう,

x M なる計測領域 M を適切に設定しなければならない.かりに計測領域を 立方体フレームの内部全体,すなわちM = とした場合,x1, x2, x3 軸上でそれぞれ

第3章 ガウス–ニュートン法による位置推定 28

x1 p1

0 1

1

1 1

(a) p1 on the x1-axis

x2 p2

0 1

1

1 1

(b) p2 on thex2-axis

x3 p3

0 1

1

1 1

(c) p3 on the x3-axis

Figure 3.1 Values of the positional functions along each axis.

p1, p2, p3はFigure 3.1のような値をとる.x1p1,およびx3p3の関係は,いずれ も単調増加関数である.一方,x2 軸上におけるp2 は単調ではなく,x2 =±0.6付近に極 値点をもっている.x2 軸上でp1およびp3はつねに0であるため,x2軸上では1つの極 値点をはさむ2つの点で,同じ値p= (0, p2,0)をとる場合が生じる.このとき解の一意 性は失われ,pˆからxを一意には推定することができない.

計測領域 M が適切に設定されていても,磁界を観測するときに測定誤差が生ずるた め,pˆは誤差を含んでいる.誤差の混入したpˆがもしp(x)の値域に含まれなければ,方

程式系(2.33)を満足する解は1つも存在しない.そのような場合でも,方程式系を最小

二乗問題としてとらえ,数値解法を用いて方程式系を近似的に満足する最小二乗解を得る ことは可能である.最小二乗問題の数値解法としては,方法の単純さと実装の容易さによ りしばしばガウス–ニュートン法が選択肢される [59, p. 97] [60, p. 95–96] [61].

方程式系 (2.33)の数値解を求める計算手順をつぎに示す.説明を一般化するため,位

置関数は n個あると仮定する.ただし,求める未知数がx1, x2, x3 の3個であるから,

n≥3であることが必要である.ここではつぎのように,位置xを3×1行列xで,位置 関数ベクトルの真値p(x)および測定値pˆ1行列p(x) およびˆpで表すことにする.

x =

x1

x2 x3

, p(x) =



 p1(x) p2(x)

... pn(x)



, ˆp=



 ˆ p1 ˆ p2

... ˆ pn



 (3.1)

第3章 ガウス–ニュートン法による位置推定 29 方程式系(2.33)の残差ベクトルを1行列r(x) = [r1(x) r2(x) . . . rn(x)]tで表し,

r(x) =p(x)ˆp (3.2)

で定義すれば,解かれるべき方程式はr(x) =0となる.

通常の非線形方程式系に対するニュートン–ラプソン法では,適当な初期解x0 から出発 して,

xk+1 =xk+dk (3.3)

により近似解を更新し,収束解を得る.ここに,dkは線形方程式系

j(xk)dk =r(xk) (3.4)

の解で,j(x)はr(x)のヤコビ行列で,

j(x) =r(x) =







∂r1

∂x1

∂r1

∂x2

∂r1

∂x3

∂r2

∂x1

∂r2

∂x2

∂r2

∂x3

... ... ...

∂rn

∂x1

∂rn

∂x2

∂rn

∂x3







(3.5)

である.

残差2乗和°°r(x)°°2 =r(x)tr(x) を最小化するガウス–ニュートン法では,dk を式(3.4) の最小二乗解にとり,

xk+1 =xk+αkdk (3.6)

により解を更新する [60, p. 95–96].すなわちdk は,式(3.4)の両辺にj(xk)tをかけた正 規方程式

j(xk)tj(xk)dk =j(xk)tr(xk) (3.7) の解である.式(3.6) において αk は,ステップ幅を調整するための正の係数で,調整 しない場合にはαk = 1とする.αkの調整には通常,直線探索が用いられ,反復ごとに

°°r(x)°°2 が確実に減少するように値が決められる.

位置関数の個数nにかかわらず,j(xk)の階数が3であれば,そのときに限りj(xk)tj(xk) の逆行列は存在し,式(3.7)はただ1つの解をもつ [62, p. 126].反復の過程で,j(xk)に 数値的な階数の低減が生じると,式(3.7)の計算は数値的に不安定となり破綻する.その 場合,位置関数の個数nを増やし,方程式系(2.33)にあらたな方程式を追加すれば,階 数の低減はある程度抑制されると考えられる.その具体例については3.3節で述べる.

第3章 ガウス–ニュートン法による位置推定 30

関連したドキュメント