変分法
ステージコスト関数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
に対する停留条件を求めれば良い. すなわち, オイラーの方程式の第一式でLをHに置き換えれば良い.
積分拘束条件
\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
に対する停留条件を求めれば良い. この場合も, オイラーの方程式の第一式は変わらない.