変分法

Published

2024-08-31

Modified

2024-08-31

ステージコスト関数Lは十分に滑らかなものとし, ダイナミクスは初期条件が与えられたものを考える. L(x(t), \dot{x}(t), t)について, 第二変数についての偏微分係数は

\dfrac{\partial L}{\partial p}(x(t), \dot{x}(t), t)

と書くことにする. 簡単のため, 終端コストは考えない.

問題設定

T>0, X=\{ x\in C^1([0,T]) \mid x(0)=x_0\}に対して, 汎関数J

J(x) = \int_0^T L(x(t), \dot{x}(t), t)\, dt ,\quad x \in X

により定める. 線形空間Xにおける微小変化を計算する. y\in C^1([0,T]), y(0)=0, h\in \mathbf{R}に対して,

\begin{aligned} &J(x+hy) - J(x)\\ &\quad = h\int_0^T \left( \dfrac{\partial L}{\partial x}(x(t),\dot{x}(t),t)y(t) + \dfrac{\partial L}{\partial p}(x(t),\dot{x}(t),t)\dot{y}(t) \right)\,dt\\ &\qquad + \dfrac{h^2}{2}\Bigg( \dfrac{\partial^2 L}{\partial x^2}(x(t),\dot{x}(t),t)y(t)^2 + \dfrac{\partial^2 L}{\partial x\partial p}(x(t),\dot{x}(t),t)y(t)\dot{y}(t)\\ &\qquad \quad + \dfrac{\partial^2 L}{\partial p \partial x}(x(t),\dot{x}(t),t)y(t)\dot{y}(t) + \dfrac{\partial^2 L}{\partial x\partial p}(x(t),\dot{x}(t),t)\dot{y}(t)^2 \Bigg)\,dt\\ &\qquad +o(|h|^2), \quad \text{as } h\rightarrow 0 \end{aligned}

が得られる. 停留条件として第一変分と呼ばれるhの一次の項\delta J(x;y)=0が任意のy\in Xについて成り立つことが得られる. また, 部分積分により

\begin{aligned} \delta J(x;y) &= \int_0^T \left( \dfrac{\partial L}{\partial x}(x(t),\dot{x}(t),t)y(t) + \dfrac{\partial L}{\partial p}(x(t),\dot{x}(t),t)\dot{y}(t) \right)\\ &= \int_0^T \left( -\dfrac{d}{dt}\left(\dfrac{\partial L }{\partial p}(x(t),\dot{x}(t),t)y(t)\right) +\dfrac{\partial L}{\partial x}(x(t),\dot{x}(t),t)y(t) \right)\\ &\quad + \dfrac{\partial L }{\partial p}(x(T),\dot{x}(T),T)y(T) - \dfrac{\partial L }{\partial p}(x(0),\dot{x}(0),0)y(0). \end{aligned}

だから, 変分法の基本補題により停留条件は以下のように表せられる

\begin{aligned} &-\dfrac{d}{dt}\left(\dfrac{\partial L }{\partial p}(x(t),\dot{x}(t),t)\right) +\dfrac{\partial L}{\partial x}(x(t),\dot{x}(t),t),\quad t\in(0,T)\\ &\dfrac{\partial L }{\partial p}(x(T),\dot{x}(T),T)=0 \end{aligned}

上記の方程式をオイラーの方程式と呼ぶ.

問題設定を変えた場合

終端固定x(T)=x_Nの場合

変分についてy(N)=0が成り立つのでオイラーの方程式の第2式は現れない.

コスト関数が第3変数tについて依存しないとき

L=L(x,p)とかく. オイラーの方程式の第1式から形式的に

\begin{aligned} &\dfrac{d}{dt}\left(\dfrac{\partial L }{\partial p}(x(t),\dot{x}(t))\dot{x}(t) -L(x(t),\dot{x}(t))\right)\\ &\quad = \dfrac{d}{dt}\left(\dfrac{\partial L }{\partial p}(x(t),\dot{x}(t))\right)\dot{x}(x) - \dfrac{\partial L }{\partial x}(x(t),\dot{x}(t))\dot{x}(t)\\ &\quad = 0 \end{aligned}

が成り立つ. これより, ある実数cが存在して,

\dfrac{\partial L }{\partial p}(x(t),\dot{x}(t))\dot{x}(t) -L(x(t),\dot{x}(t))=c

が成り立つことが停留条件となる.

拘束条件のある場合

重要なので, 以下の節で述べる

拘束条件付き変分問題

関数C(x(t), \dot{x}(t), t)について, 以下の2種類の制約を考える. また, ハミルトニアンを H(x,p,\lambda, t) = L(x,p,t) - \lambda^TC(x,p,t) とおく.

各時刻での拘束条件

任意の時刻についてC(x(t), \dot{x}(t), t)=0が課せられている場合を考える. この場合はラグランジュ乗数をtに依存する関数\lambda(t)として,

J(x,\lambda) = \int_0^T H(x(t), \dot{x}(t), \lambda(t),t)\,dt

に対する停留条件を求めれば良い. すなわち, オイラーの方程式の第一式でLHに置き換えれば良い.

積分拘束条件

\int_0^T C(x(t), \dot{x}(t), t)=c

が課されている場合を考える. この場合は実数\lambdaとして

J(x,\lambda) = \int_0^T H(x(t), \dot{x}(t), \lambda,t)\,dt

に対する停留条件を求めれば良い. この場合も, オイラーの方程式の第一式は変わらない.

第二変分