例えば,初期条件$x(0)=0$を満たす常微分方程式
が適切な定義域において解を一意にもつことは[Picard(ピカール)-Lindelöf(リンデレフ)の定理]により示されます.
この定理は,初期条件を満たす微分方程式
の形の右辺が適当な連続性を満たせば,解が一意存在することを保証する定理で常微分方程式の基礎となっています.
この[Picard–Lindelöfの定理]は常微分方程式の解を帰納的に近似していく[Picardの逐次近似法]という手法が背景にあります.
そこで,この記事では
- [Picardの逐次近似法]の具体例
- [Picard-Lindelöfの定理]の内容と証明
の2つを説明します.
目次
解説動画
この記事の解説動画をYouTubeにアップロードしています.
【ピカールの逐次近似法】常微分方程式の解の存在と一意性の定理の背景!リプシッツ連続のアレ!(15分27秒)
この動画が良かった方は是非チャンネル登録をお願いします!
Picardの逐次近似法の具体例
[Picardの逐次近似法]の考え方を見るために,まずいろいろな正当化はひとまず措いて具体例を考えます.
初期条件$x(0)=1$を満たす関数$x$の微分方程式
の解を[Picardの逐次近似法]により求めよ.
詳しい説明は後回しにして,この問題に[Picardの逐次近似法]の手順を適用すると次のようになります.
- まずは初期値が1であることから,関数$x_1$を恒等的に1である関数と定める:$x_0(t)\equiv1$.
- 微分方程式を積分方程式に書き直す:
- この積分方程式をもとに,関数列$\{x_n\}$を以下のように帰納的に定める:
このとき(いろいろな正当化は後回しにして),関数列$\{x_n\}$の極限関数$x:=\lim\limits_{n\to\infty}x_{n+1}$が存在して,関数$x$は問題の微分方程式の解となります.
このように適切な関数列を構成して極限を考えることで解を求めるこの方法を[Picardの逐次近似法 (iteration scheme)]といいます.
両辺を$[0,t]$で積分すると,積分方程式
が得られる.$x_0(t)\equiv x(0)=1$として,[Picardの逐次近似法]により$\{x_k\}_{k=0}^{\infty}$を構成すると
となる.これと続けると,任意の$n\in\N$に対して
となることが分かる.ただし,$0^0=1$とする.$x_{n}(t)$は$e^t$の$n$次までのマクローリン展開となっているから
なので,解は$x(t)=e^t$である.
$x(t)=e^t$は初期条件$x(0)=1$と微分方程式$\dfrac{dx}{dt}(t)=x(t)$を満たしますから,解であることが分かりますね.
確かに上で説明した[Picardの逐次近似法]の手順で解を導くことが出来ました.
準備
それでは,この[Picardの逐次近似法]を保証する[Picard–Lindelöfの定理]を厳密に考えていきましょう.
常微分方程式
この記事で扱う微分方程式は,例えば
のような,1変数$t$に関する$n$個の未知関数$x_i:\R\to\R$ $(i=1,\dots,n)$に関する常微分方程式です:
この連立方程式はベクトル$\m{x}=\bmat{x_1\\\vdots\\x_n}$, $\m{f}=\bmat{f_1\\\vdots\\f_n}$を用いて
とベクトルの表記で表せますね.
イメージしにくい場合には,$n=1$として連立でない単一の微分方程式と思って読んでも本質的に問題ありません.
一様ノルム
閉区間$I\subset\R$に対して,関数$u:I\to\R$に対して,一様ノルム$\|\cdot\|_I$を
で定めます.
$C^0(I)$は$I$上で定義された連続関数全体の集合で,$n$個の成分が全て$C^0(I)$の元であるようなベクトル全体の集合を$(C^0(I))^n$と表します.
これは$n$個の$C^0(I)$の直積で,イメージとしては$\R$の$n$個の直積を$\R^n$と表すのと同じです.
このとき,$n$個の$C^0(I)$の直積$(C^0(I))^n$は一様ノルム$\|\cdot\|_I$によって完備距離空間となります.
Banachの不動点定理
この記事での[Picard-Lindelöfの定理]の証明には[Banachの不動点定理]を用います.
[Banachの不動点定理(縮小写像の原理)] 空でない完備距離空間$(X,d)$上の縮小写像$f$は不動点を唯一つもつ.なお,任意の$x\in X$に対して
が写像$f$の不動点である.ここに,写像$f^n$は$f$を$n$回施す写像である.
証明やイメージなど,詳しくは以下の記事を参照してください.
写像$f:X\to X$に対して,$f(x)=x$を満たす$x\in X$を$f$の不動点といいます.不動点に関する定理は様々ありますが,[Banachの不動点定理]は完備距離空間上の縮小写像の不動点の存在と一意性が同時に判定できます.また,任意の$x\in X$に$f$を反復して写像させることで不動点に収束するため,具体的な解を構成することができます.
Picard-Lindelöfの定理
それでは[Picard-Lindelöfの定理]の説明に移ります.
Picard-Lindelöfの定理
以下が[Picard-Lindelöfの定理]です.
[Picard-Lindelöfの定理] $t_0\in\R$, $\m{x}_0\in\R^n$, $T>0$, $R>0$とする.$\R\times\R^n$上の閉集合$D$を
で定め,関数$\m{f}:D\to\R^n$は$D$上で次を同時に満たすとする.
- $\m{f}$は連続
- $\m{f}$は$\m{x}$に関してLipschitz連続(Lipschitz定数を$L$とする)
このとき,初期条件$\m{x}(t_0)=\m{x}_0$を満たす常微分方程式
の解$\m{x}\in(C^1(I))^n$が一意に存在する.ここに,
- $I:=[t_0-T^*,t_0+T^*]$
- $T^*:=\min\{T,\frac{R}{M}\}$
- $M:=\sup\limits_{(t,\m{x})\in D}|\m{f}(t,\m{x})|$
である.さらに,$\m{f}\in(C^m(D))^n$なら,解は$\m{x}\in(C^{m+1}(I))^n$となる.
ゴチャゴチャと書いていますが,大切なところは「$\m{f}$が2つの条件を満たせば,微分方程式$\od{\m{x}}{t}(t)=\m{f}(t,\m{x}(t))$の解が一意に存在する」という点です.
この$\m{f}$の2つの条件
- 連続
- $\m{x}$に関してLipschitz連続
はそれほど厳しい条件ではなく,応用上多くの方程式に対してこの[Picard-Lindelöfの定理]は適用できます.
$\Omega\subset\R^n$とします.一般に関数$f:\Omega\to\R^n$がLipschitz連続であるとは
ある$L>0$が存在し,任意の$\m{x}_1,\m{x}_2\in\Omega$に対して$|\m{f}(\m{x}_1)-\m{f}(\m{x}_2)|\le L|\m{x}_1-\m{x}_2|$
を満たすことをいい,このような$L$のうち最小のものを$f$のLipschitz定数といいます.
そのため「関数$\m{f}:D\to\R^n$が$D$上で$\m{x}$に関してLipschitz連続」であるとは
ある$L>0$が存在し,任意の$\bmat{t\\\m{x}_1},\bmat{t\\\m{x}_2}\in D$に対して$|\m{f}(t,\m{x}_1)-\m{f}(t,\m{x}_2)|\le L|\m{x}_1-\m{x}_2|$
を満たすことを意味します.
また,$D$は有界閉集合で$\m{f}$は$D$上連続なので,$\m{f}$は有界となり$M:=\sup\limits_{(t,\m{x})\in D}|\m{f}(t,\m{x})|$は存在します.
なお,リプシッツ条件が成り立たない場合には解の一意性は保証されません.そのような微分方程式については以下の記事を参照してください.
例えば,初期条件$x(0)=0$を満たす常微分方程式$\od{x}{t}=2\sqrt{x}$の解は一意ではありません.この記事では,解の存在のみ保証できるPeano(ペアノ)の存在定理も紹介しています.
積分方程式への書き換え
[Picard-Lindelöfの定理]を証明するするためには,同値な積分方程式への書き換えがポイントとなります.
$I\subset\R$を閉区間,$t_0\in I$,$\m{x}_0\in\R^n$とする.このとき,以下の2条件は同値である.
- $\m{x}\in(C^1(I))^n$は初期条件$\m{x}(t_0)=\m{x}_0$を満たす常微分方程式
の解である.
- $\m{x}\in(C^0(I))^n$は積分方程式
の解である.
[1] 初期条件$\m{x}(t_0)=\m{x}_0$を満たす常微分方程式
が解$\m{x}\in C^1(I)$をもつとする.
このとき,変数を$\tau$に置き換えて両辺を$\tau$について$[t_0,t]$上で積分すると,微分積分学の基本定理から
が成り立つ.
[2] 積分方程式
が解$\m{x}\in C^0(I)$をもつとする.
積分方程式に$t=t_0$を代入すると,右辺の積分範囲は$[t_0,t_0]$となって積分値は0だから,初期条件$\m{x}(t_0)=\m{x}_0$が得られる.
また,$\m{f}$はもとより$D$上で連続なので,$\m{f}$に連続な$\m{x}$を合成した関数$\m{f}(t,\m{x}(t))$は$t$に関して$I$上で連続となる.
よって,連続関数の積分なので,右辺の$\dint_{t_0}^{t}\m{f}(\tau,\m{x}(\tau))\,d\tau$は$t$に関して$I$上$C^1$級である.
これより,左辺の$\m{x}(t)$も$I$上$C^1$級となって,両辺を$t$で微分すると
が成り立つ.
常微分方程式の代わりに,後者の積分方程式を考えてもよいということが分かりました.
このように微分方程式を積分方程式に書き直すことができることをDuhamelの原理といいます.
積分方程式$\m{x}(t)=\m{x}_0+\dint_{t_0}^{t}\m{f}(\tau,\m{x}(\tau))\,d\tau$が自動的に初期条件$\m{x}(t_0)=\m{x}_0$を満たすのはありがたい点です.
以降はこの積分方程式を中心に話を進めていくことになります.
Picard-Lindelöfの定理の証明
それでは,[Picard-Lindelöfの定理]を5つのステップに分けて証明します.
Step 1
$I_{L}:=\brc{t_0-\frac{1}{2L},t_0+\frac{1}{2L}}\cap I$とし,関数空間
を定めると,$\mathcal{C}$は一様ノルム$\|\cdot\|_{I_L}$に関する空でない完備距離空間となることを示します.
$I_L$上で恒等的に$\m{x}_0$をとる関数は$\mathcal{C}$に属するから$\mathcal{C}\neq\emptyset$である.
一様ノルム$\|\cdot\|_{I_L}$に関するCauchy列$\{\m{x}_k\}_{k\in\N}\subset\mathcal{C}$を任意にとる.このとき,
- $\mathcal{C}\subset(C^0(I_L))^n$より,$\{\m{x}_k\}_{k\in\N}$は$(C^0(I_L))^n$における一様ノルム$\|\cdot\|_{I_L}$に関するCauchy列
- $(C^0(I_{L}))^n$は一様ノルム$\|\cdot\|_{I_L}$に関して完備距離空間
だから,ある$\m{x}\in(C^0(I_{L}))^n$が存在して$\m{x}=\lim\limits_{k\to\infty}\m{x}_k$を満たす.
任意の$k\in\N$に対して,$\m{x}_k\in\mathcal{C}$だから
を満たす.よって,左辺で$k\to\infty$として
を得る.したがって,$\{\m{x}_k\}_{k\in\N}$の極限が$\mathcal{C}$に属するから,$\mathcal{C}$は完備である.
なお,$\mathcal{C}$は閉集合なので,位相空間の一般論から$\m{x}\in\mathcal{C}$としても良いですね.
Step 2
$\mathcal{C}$上の写像$\Phi$を
で定めると,$\Phi$は$\mathcal{C}$上の縮小写像となることを示します.
[1] $\Phi$の値域が$\mathcal{C}$であることを示す.
任意に$\m{x}\in\mathcal{C}$をとる.このとき,
- 任意の$\tau\in I_L$に対して$(\tau,\m{x}(\tau))\in D$を満たすこと
- $\m{f}$は$D$上で定義されていること
を併せると,任意の$t\in I_L$に対して$\dint_{t_0}^{t}\m{f}(\tau,\m{x}(\tau))\,d\tau$が定義できる.
よって,積分の連続性から$\Phi(\m{x})\in (C^0(I_L))^n$を得る.
また,$t\in I_L$のとき$|t-t_0|\le T^*$だから
である.よって,$\Phi(\m{x})\in\mathcal{C}$となる.すなわち,$\Phi:\mathcal{C}\to\mathcal{C}$である.
[2] $\Phi$が$\mathcal{C}$上の縮小写像であることを示す.
このとき,任意の$\m{x},\m{y}\in\mathcal{C}$に対して,
なので,$\Phi$は$\mathcal{C}$上の一様ノルム$\|\cdot\|_{I_L}$に関する縮小写像である.
Step 3
積分方程式
が解$\m{x}\in C^0(I)$をもつことを示します.
[Step 1]より$\mathcal{C}$は空でない完備距離空間であり,[Step 2]より$\Phi$が$\mathcal{C}$上の縮小写像だから,[Banachの不動点定理]より$\Phi$の不動点が$\mathcal{C}$上にただ1つ存在する.すなわち,
を満たす$\m{x}\in\mathcal{C}$が一意に存在する.
もし$\sup I_L<\sup I$なら,$t_0+\frac{1}{2L}$を初期時間とみなせば,これまでと同じ議論により解が$t\le t_0+\frac{2}{2L}$まで延長できる.
これを繰り返すことにより,解の定義域は$t\le t_0+T^*$にまで延長できる.
同様に,$\inf I_L>\inf I$なら,解の定義域は$t_0-T^*\le t$にまで延長できる.
よって,初期条件$\m{x}(t_0)=\m{x}_0$を満たす積分方程式
の解$\m{x}\in C^0(I)$が存在する.
[Step 1]と[Step 2]の議論を一回行うごとに,解の存在する$t$が正の方向に$\frac{1}{2L}$ずつ延長されていくことになるわけですね.
さて,これで$\mathcal{C}$において解が一意に存在することは分かりましたが,より広い$C^0(I)$で解が一意であるかどうかは分かっていません.
そのため,次は$C^0(I)$においても解が一意であることを示しましょう.
Step 4
初期条件$\m{x}(t_0)=\m{x}_0$を満たす常微分方程式
の解$\m{x}$が$C^1(I)$において一意に存在することを示します.
$\m{x},\m{y}\in C^0(I)$を積分方程式の解とし,$\m{u}:=\m{x}-\m{y}$とする.$I$上で恒等的に$\m{u}(t)=0$が成り立つこと,すなわち$\|\m{u}\|_I=0$を示せばよい.
積分方程式の解であることから,任意の$t\in I$に対して
が成り立つ.
また,一般に有界閉区間で連続な関数は最大値を持つから$\|u\|_I<\infty$である.
辺々引いて長さをとると,$\m{f}$のLipschitz連続性より
となる.よって
が得られた.
以下,任意の$N\in\N$に対して$|\m{u}|\le \frac{L^{N}\|\m{u}\|_I}{N!}|t-t_0|^{N}$が成り立つことを数学的帰納法により示す.
$N=1$の場合はいま得られたので,あとは$N=k$のときに成り立つと仮定して$N=k+1$の場合を示せばよい.
$N=k$のときに成り立つとすると
であり,これと不等式$(*)$を併せて
となるから,$N=k+1$のときも成り立つ.
よって,任意の$N\in\N$に対して
が成り立つから,$N\to\infty$として$|\m{u}|_I\le0$となるから$\|\m{u}\|=0$が従う.
ただし,一般に任意の$x\in\R$に対して,$\frac{x^N}{N!}\to0$ ($N\to\infty$)であることを用いた.
Step 5
$\m{f}\in(C^m(D))^n$なら,解は$\m{x}\in(C^{m+1}(I))^n$となることを示します.
数学的帰納法により示す.
[1] $m=0$の場合にはすでに証明されている.
[2] $m=\ell$の場合に成り立つと仮定する.
$\m{f}\in(C^{\ell+1}(D))^n$なら$\m{f}\in(C^{\ell}(D))^n$だから,帰納法の仮定より$\m{x}\in(C^{\ell+1}(I))^n$である.
よって,$\m{f}(\cdot,\m{x})\in(C^{\ell+1}(I))$だから,不定積分$\dint_{t_0}^{t}\m{f}(\tau,\m{x}(\tau))\,d\tau$で定まる関数は$D$上$C^{\ell+2}$級となる.
よって,$m=\ell+1$の場合にも成り立つ.
[1], [2]より,$\m{f}\in(C^m(D))^n$なら,解は$\m{x}\in(C^{m+1}(I))^n$となることが分かった.
これで[Picard-Lindelöfの定理]が証明できました.
ピカールの逐次近似法の正当化
途中で[Banachの不動点定理]を適用して解の存在を示したわけですが,[Banachの不動点定理]により
が不動点になることも分かるのでした.これが[Picardの逐次近似法]の正体なわけですね.
このように,[Picardの逐次近似法]は本質的に[Banachの不動点定理]となっているわけですね.
念のため,以下で[Picardの逐次近似法]の定義がうまく機能していることをみておきましょう.
[1] 任意の$t\in I$に対して,$\m{x}_1(t):=\m{x}_0$と定めます.
このとき,$\m{x}_1\in C^0(I)$なので,$(t,\m{x}_1(t))=(t,\m{x}_0)\in D$ですね.
[2] 任意の$t\in I$に対して$(t,\m{x}_k(t))\in D$となる$\m{x}_k\in C^0(I)$が定まったとします.
このとき,$f$は$D$上で連続だから,積分方程式の右辺$\m{x}_0+\int_{t_0}^{t}\m{f}(\tau,\m{x}(\tau))\,d\tau$に$\m{x}=\m{x}_k\in C^0(I)$を代入できて,
で$I$上の関数$\m{x}_{k+1}$を定めます.このとき,任意の$t\in I$に対して
だから,$(t,\m{x}_{k+1}(t))\in D$ですね.
[1], [2]より,任意の$t\in I$に対して$(t,\m{x}_k(t))\in D$となる$C^0(I)$上の列$\{\m{x}_k\}_{k=1}^{\infty}$が帰納的に定まることが分かりましたね.
これにより,確かに[Picardの逐次近似法]で定まる関数列$\{\m{x}_n\}_{n=1}^{\infty}$が数学的にもきちんと定義されることが保証されましたね.