Newton-Kantorovich 型定理を利用した有限次元非線形方程式の精度保証付き数値解法

Newton-Kantorovich型定理はNewton-Kantorovichの定理を精度保証付き数値計算用にアレンジした定理である。

定理  有界線型作用素 $A^{\dagger} \in \mathcal{L}(X, Y), A \in \mathcal{L}(Y, X)$ を考え, 作用素 $F: X \rightarrow Y$ が $C^{1}$ -Fréchet微分可能とする。また $A$ が単射で $AF : X \rightarrow X$ とする。今, $\bar{x} \in X$に対して,

$$ \begin{aligned} \|A F(\bar{x})\|_{X} & \leq Y_{0} \\ \left\|I-A A^{\dagger}\right\|_{\mathcal{L}(X)} & \leq Z_{0} \\ \left\|A\left(D F(\bar{x})-A^{\dagger}\right)\right\|_{\mathcal{L}(X)} & \leq Z_{1} \\ \|A(D F(b)-D F(\bar{x}))\|_{\mathcal{L}(X)} & \leq Z_{2}(r) r, \quad \text { for all } b \in \overline{B(\bar{x}, r)} \end{aligned} $$

が成り立つとする。このとき, radii polynomialを以下で定義する。

$$ p(r) := Z_{2}(r)r^2-(1-Z_1-Z_0)r+Y_0. $$

これに対し, $p(r_0)<0$ となる $r_0>0$ が存在すれば, $F(\tilde{x})=0$ をみたす解 $\tilde{x}$ が $b \in \overline{B(\bar{x}, r)}$ 内に一意存在する。

ここで、 $DF(\bar{x})$ を $F$ の$\bar{x}$ におけるFréchet微分, $A^{\dagger}$ を $DF(\bar{x})$の近似, $A$を $A^{\dagger}$ の近似左逆作用素とする。( $AA^{\dagger} \approx I$ とするのが一般的である。)

この定理を説明するために, 簡易ニュートン写像, 有界線形作用素, Fréchet微分が必要である。以下では, これらの定義を説明する。

簡易ニュートン写像

定義  $X$, $Y$ をBanach空間とし, 写像 $F:X\rightarrow Y$ に対して,

$$ F(x)=0 \quad \text{in}~Y $$

という(非線形)作用素方程式を考える。 このとき写像 $T:X\rightarrow X$ を

$$ T(x):=x-AF(x) $$

と定義したとき, これを簡易ニュートン写像という。ここで, $A:Y\rightarrow X$ はある全単射な線形作用素である。このとき, $\bar{x}$を $f(\bar{x}) \approx 0$ の近似解とし, $\bar{x}$ の近傍を

$$ \begin{array}{ll} B(\bar{x}, r):=\{x \in X:\|x-\bar{x}\|<r\} & \text { (開球) } \\ \overline{B(\bar{x}, r)}:=\{x \in X:\|x-\bar{x}\| \leq r\} & \text { (閉球) } \end{array} $$

で定義する。このときもし, $B(\bar{x}, r)$ 上で写像 $T$ が縮小写像となれば, Banachの不動点定理から $F(\bar{x})=0$をみたす解 $\tilde{x} \in B(\bar{x}, r)$がただ1つ存在することになる。

このように解の存在を仮定せずに近似解近傍での収束をいう定理を Newton 法の半局所的収束定理という。

Banach空間

定義 Banach空間とは, 完備なノルム空間のことをいう。

有界線形作用素

Banach空間 $X$ から $Y$への有界線形作用素全体を

$$ \mathcal{L}(X, Y):=\{E:X\rightarrow Y:E\text{が線形},\|E\|_{ \mathcal{L}(X, Y)}<\infty \} $$

とする。ここで $\|\cdot\|_{ \mathcal{L}(X, Y)}$ は作用素ノルム

$$ \|E\|_{\mathcal{L}(X, Y)}:=\sup _{\|x\|_{X}=1}\|E x\|_{Y} $$

を表す。そして空間 $\left\langle\mathcal{L}(X, Y),\|\cdot\|_{\mathcal{L}(X, Y)}\right\rangle$ はBanach空間となる。

Fréchet微分

定義 作用素 $F:X\rightarrow Y$が $x_0 \in X$ でFréchet微分可能であるとは, ある有界線形作用素 $E:X \rightarrow Y$ が存在して,

$$ \lim _{\|h\|_{X} \rightarrow 0} \frac{\left\|F\left(x_{0}+h\right) - F\left(x_{0}\right)-E h\right\|_{Y}}{\|h\|_{X}}=0 $$

が成り立つことをいう。このとき, $E$ は作用素 $F$ の $x_0$ におけるFréchet微分といい, $E=DF(x_0)$ とかく。 もしも作用素 $F:X\rightarrow Y$ がすべての $x\in X$ に対してFréchet微分可能ならば, $F$ は $X$ において $C^1$ -Fréchet微分可能という。

例1.多項式の根の求解

関数 $f(x):=x^2-2=0$ の解 $\tilde{x}=\pm \sqrt{2}$ を求めることを考える。

上記のソースコードで, $f(\bar{x}) \approx 0$ となる近似解が得られる。この $\bar{x}$ について $Df(\bar{x})=2\bar{x}$ より, $A^{\dagger}=Df(\bar{x}), A=Df(\bar{x})^{-1}=1/(2\bar{x})$とすると、

$$ |A f(\bar{x})|=\left|\frac{f(\bar{x})}{2 \bar{x}}\right|=: Y_{0}, \quad\left|1-A A^{\dagger}\right|=: Z_{0}(=0), \quad\left|A\left(D f(\bar{x})-A^{\dagger}\right)\right|=: Z_{1}(=0). $$

任意の $b \in \overline{B(\bar{x}, r)}$ について

$$ |A(D f(b)-D f(\bar{x}))|=\left|\frac{1}{2 \bar{x}}(2 b-2 \bar{x})\right|=\frac{|b-\bar{x}|}{|\bar{x}|} \leq \frac{r}{|\bar{x}|}=: Z_{2} r. $$

よって, Newton-Kantorovich 型定理における $p(r)$ は

$$ p(r):=Z_{2}r^2-(1-Z_{1}-Z{0})r+Y_{0} $$

で定義される。ここで, $a=Z_{2},\quad b=-(1-Z_{1}-Z{0}),\quad c=Y_{0}$ とすると, $b^2-4ac<0$ ならば $p(r_0)<0$ を満たす $r_0>0$ は存在しない。逆に, $b^2-4ac>0$ ならば

$$ \frac{-b-\sqrt{b^{2}-4 a c}}{2 a} \leq r_{0} \leq \frac{-b+\sqrt{b^{2}-4 a c}}{2 a} $$

を満たすr_0で検証が成功する。以下は各boundを計算した結果である。

例2.Logistic map の 3 周期解

変数 $x$ に対して

$$ x \mapsto \lambda x(1-x), \quad \lambda \in \mathbb{R} $$

という写像をロジスティック写像という。 この写像が $x_{1} \rightarrow x_{2} \rightarrow x_{3} \rightarrow x_{1}$ という値で変化する3周期解を計算する

問題1

与えられた $\lambda \in \mathbb{R}$ に対して,

$$ \left\{\begin{array}{l} x_{1}-\lambda x_{3}\left(1-x_{3}\right)=0 \\ x_{2}-\lambda x_{1}\left(1-x_{1}\right)=0 \\ x_{3}-\lambda x_{2}\left(1-x_{2}\right)=0 \end{array}\right. $$

をみたす $x=(x_1,x_2,x_3)^T\in \mathbb{R}$ を求めよ。写像 $F:\mathbb{R}^3 \rightarrow \mathbb{R}^3$は以下のようにおくことができる

$$ F(x):=\left[\begin{array}{l} x_{1}-\lambda x_{3}\left(1-x_{3}\right) \\ x_{2}-\lambda x_{1}\left(1-x_{1}\right) \\ x_{3}-\lambda x_{2}\left(1-x_{2}\right) \end{array}\right]. $$

ある $x\in \mathbb{R}^3$におけるJacobi行列は以下ようにおくことができる

$$ DF(x):=\left[\begin{array}{ccc} 1 & 0 & -\lambda\left(1-2 x_{3}\right) \\ -\lambda\left(1-2 x_{1}\right) & 1 & 0 \\ 0 & -\lambda\left(1-2 x_{2}\right) & 1 \end{array}\right]. $$

はじめに、パラメータ値 $\lambda = 3.82843$(または $4$)として, 初期値を$x_0=(1,-1,1)^T$とすると、次のコードで近似解 $\bar{x}$ が得られる。

次に、 radii polynomial $p(r)$を計算する。上記の計算によって得られた近似解 $\bar{x}$ について, $A^{\dagger}=Df(\bar{x})$, $A \approx Df(\bar{x})^{-1}$とする。

よって、 $Y_0,Z_0,Z_1,Z_2$ boundsは以下のようになる。

$$ \|A F(\bar{x})\| \leq Y_{0}, \quad\left\|I-A A^{\dagger}\right\|=\|I-A D F(\bar{x})\| \leq Z_{0}, \quad\left\|A\left(D F(\bar{x})-A^{\dagger}\right)\right\|=Z_{1}(=0). $$

また、任意の $b \in \overline{B(\bar{x}, r)}:=\{b\mid \|b-\bar{x}\|\le r\}$ について,

$$ \begin{aligned} \|A(D F(b)-D F(\bar{x}))\| &=\| A\left[\begin{array}{ccc} 0 & 0 & 2 \lambda\left(x_{3}-\bar{x}_{3}\right) \\ 2 \lambda\left(x_{2}-\bar{x}_{2}\right) & 0 & 0 \\ 0 & 2 \lambda\left(x_{1}-\bar{x}_{1}\right) & 0 \end{array}\right] \\ & \leq 2|\lambda|\|A\|\|b-\bar{x}\| \\ & \leq 2|\lambda|\|A\| r=: Z_{2} r . \end{aligned} $$

よって, radii polynomial $p(r)$は,

$$ p(r):=Z_{2}r^2-(1-Z_{1}-Z_{0})r+Y_0 $$

で定義される。Root finding と同様に、 $a=Z_{2},\quad b=-(1-Z_{1}-Z{0}),\quad c=Y_{0}$ とすると, もし $b^2-4ac>0$ ならば

$$ \frac{-b-\sqrt{b^{2}-4 a c}}{2 a} \leq r_{0} \leq \frac{-b+\sqrt{b^{2}-4 a c}}{2 a} $$

を満たすr_0で検証が成功する。以下は, これらの検証を行ったソースコードである。

次に, パラメータ $\lambda$ もわからない場合を考えていく。上記の計算では, パラメータ値 $\lambda$ を事前に与えたが, パラメータ値自体も分からない場合はそれ自身も未知数として $x = (\lambda, x1, x2, x3)^T \in \mathbb{R}^4$ を計算することを考える。

問題2

次をみたす $x = (\lambda,x_1,x_2,x_3) \in \mathbb{R}^4$ を求めよ

$$ \left\{\begin{array}{l} x_{1}-\lambda x_{3}\left(1-x_{3}\right)=0 \\ x_{2}-\lambda x_{1}\left(1-x_{1}\right)=0 \\ x_{3}-\lambda x_{2}\left(1-x_{2}\right)=0 \end{array}\right. $$

ただし, 問題2は未知数4つに対して, 方程式が3つしかないため正確な解を導くのが困難である。このため位相条件と呼ばれる式を追加する。

$$ \eta(x):=x_{1}+x_{2}+x_{3}-\eta_{0}, \quad \eta_{0} \in \mathbb{R} $$

これにより写像$F:\mathbb{R}^4 \rightarrow \mathbb{R}^4$を

$$ F(x):=\left[\begin{array}{l} x_{1}+x_{2}+x_{3}-\eta_{0} \\ x_{1}-\lambda x_{3}\left(1-x_{3}\right) \\ x_{2}-\lambda x_{1}\left(1-x_{1}\right) \\ x_{3}-\lambda x_{2}\left(1-x_{2}\right) \end{array}\right] $$

と定義する。ある$x \in \mathbb{R}^4$おけるJacobi行列は以下のように表すことができる。

$$ D F(x)=\left[\begin{array}{cccc} 0 & 1 & 1 & 1 \\ -x_{3}\left(1-x_{3}\right) & 1 & 0 & -\lambda\left(1-2 x_{3}\right) \\ -x_{1}\left(1-x_{1}\right) & -\lambda\left(1-2 x_{1}\right) & 1 & 0 \\ -x_{2}\left(1-x_{2}\right) & 0 & -\lambda\left(1-2 x_{2}\right) & 1 \end{array}\right]. $$

いま $\eta= 1.6311$ として, 初期値を $x_0 = (3, 1, −1, 1)^T$ とすると近似解 $\bar{x}$ が得られる。

上記の計算により、近似解が得られる。近似解 $X$ について、$A^{\dagger}=Df(X)$, $A \approx Df(X)^{-1}$とする。

よって、 $Y_0,Z_0,Z_1,Z_2$ boundは以下のようになる。

$$ \|A F(X)\| \leq Y_{0}, \quad\left\|I-A A^{\dagger}\right\|=\|I-A D F(X)\| \leq Z_{0}, \quad\left\|A\left(D F(X)-A^{\dagger}\right)\right\|=Z_{1}(=0). $$

また、任意の $b \in \overline{B(X, r)}$ について,

$$ \begin{aligned} &\|A(D F(b)-D F(X))\|\\ &=\left\|A\left[\begin{array}{cccc} 0 & 0 & 0 & 0 \\ -\left(x_{3}-\bar{x}_{3}\right)\left(1-\left(x_{3}+\bar{x}_{3}\right)\right) & 0 & 0 & c_{3} \\ -\left(x_{1}-\bar{x}_{1}\right)\left(1-\left(x_{1}+\bar{x}_{1}\right)\right) & c_{1} & 0 & 0 \\ -\left(x_{2}-\bar{x}_{2}\right)\left(1-\left(x_{2}+\bar{x}_{2}\right)\right) & 0 & c_{2} & 0 \end{array}\right]\right\|\\ &\leq\|A\|\left\|\left[\begin{array}{cccc} 0 & 0 & 0 & 0 \\ 1+2\left|\bar{x}_{3}\right|+r & 0 & 0 & \left(1+\left(\left|\bar{x}_{3}\right|+r\right)\right)+|\bar{\lambda}|+r \\ 1+2\left|\bar{x}_{1}\right|+r & \left.\left(1+\left(\left|\bar{x}_{1}\right|+r\right)\right)+|\bar{\lambda}|+r\right) & 0 & 0 \\ 1+2\left|\bar{x}_{2}\right|+r & 0 & \left(1+\left(\left|\bar{x}_{2}\right|+r\right)\right)+|\bar{\lambda}|+r & 0 \end{array}\right]\right\| \|b-\bar{x} \|\\ &\leq\|A\| \|B(r)\| r=: Z_{2}(r) r \end{aligned} $$

2行目から3行目にかけての式変形は以下のようになっている。

\begin{align} |-(x_3-\bar{x}_3)(1-(x_3+\bar{x}_3))| &\le |-(x_3-\bar{x}_3)(1-(x_3-\bar{x}_3+2\bar{x}_3))|\\ &\le |x_3-\bar{x}_3|(1+|x_3-\bar{x}_3|+2|\bar{x}_3|))\\ &\le \|b-\bar{x}\|(1+\|b-\bar{x}\|+2|\bar{x}_3|))\\ &\le \|b-\bar{x}\|(1+r+2|\bar{x}_3|)). \end{align}

ただし

$$ \begin{array}{c} c_{i}=-(\lambda-\bar{\lambda})\left(1-x_{i}\right)+\bar{\lambda}\left(x_{i}-\bar{x}_{i}\right) \quad(i=1,2,3) \\ B(r) := {\left[\begin{array}{cccc} 0 & 0 & 0 & 0 \\ 1+2\left|\bar{x}_{3}\right|+r & 0 & 0 & \left(1+\left(\left|\bar{x}_{3}\right|+r\right)\right)+|\bar{\lambda}|+r \\ 1+2\left|\bar{x}_{1}\right|+r & \left.\left(1+\left(\left|\bar{x}_{1}\right|+r\right)\right)+|\bar{\lambda}|+r\right) & 0 & 0 \\ 1+2\left|\bar{x}_{2}\right|+r & 0 & \left(1+\left(\left|\bar{x}_{2}\right|+r\right)\right)+|\bar{\lambda}|+r & 0 \end{array}\right]} \end{array} $$

とした。

上の2つの例と違うのは、$Z_2(r)$ が $r$ に対する関数になっている点である。そこで、radii polynomialの零点を精度保証付き数値計算で求め、その点の上界の一点で $p(r)<0$ を区間演算で確認する。そしてその点を $r_0$ とする。

最後に、radii polynomialの原点近傍をプロットすると $p(r)<0$ となる部分があることが確認できる。

参考文献

  1. 大石進一編著, 精度保証付き数値計算の基礎, コロナ社, 2018.
    (この本の6章にNewton-Kantorovichの定理とそれを使った精度保証方法が載っている)
  2. J.-L. Figueras, M. Gameiro, J.-P. Lessard, and R. de la Llave. A framework for the numerical computation and a posteriori verification of invariant objects of evolution equations. SIAM Journal on Applied Dynamical Systems, 16(2):1070–1088, 2017.
    (Newton-Kantorovich型定理を使ったフレームワークの紹介と応用例のサーベイ)
  3. J.-P. Lessard, J. B. van den Berg, Rigorous Numerics in Dynamics, Proceedings of Symposia in Applied Mathematics 74, American Mathematical Society, 2018.
    (力学系におけるNewton-Kantorovich型定理を使った精度保証付き数値計算の簡単な実践例をいくつか紹介している)
大谷俊輔, 高安亮紀,2021年2月4日, 2022年2月21日(修正)