【論文解説】株式市場の平均分散分析への強化学習の応用 Large scale continuous-time mean-variance portfolio allocation via reinforcement learning

# 1.はじめに

近年，価格変動は一層激しく複雑になっており，未来の証券価格を予測することはごく近い未来であってすら困難である．このような金融市場の価格過程をモデル化するのに，確率微分方程式 (以後SDE) が利用される．ここにおいて，株価の変動は効率性市場仮説に従うとし，「株価の収益率の動きはランダムである」というモデルを使用する．

※効率性市場仮説について．相場がランダムに変動する，という仮定は一見強すぎるように思える．良いニュースを受けて株価が上がる，といったことは普通であり，ある時点で株価の収益率が上がるか下がるかが五分五分である，というのは情報が相場に与える影響を無視してしまってはいないか．確かに，過去のデータを振り返れば値動きに影響を与えたニュースを特定することは簡単である．しかし，我々が興味を持っているのは過去ではなく未来の値動きであり，未来にどのようなニュースが待ち構えているかは誰にも分からない．効率性市場仮説とは，「市場では今の時点で予測可能な出来事はすでに現在の相場に織り込まれている」という仮説である．すなわち，投資家たちがそれぞれ妥当だと思う価格で合意して売買を行なっているとすると，現在の価格は現時点で入手可能なあらゆる情報を反映している，ということだ．であるならば，市場がランダムに変動する，というシンプルな前提は妥当であると言える (ある時点での株価とは，あらゆる情報を加味した結果として上がる確率と下がる確率がどちらも50%となるよう釣り合っている価格) ．もちろん，実証的に市場が常に合理的とは言えないことが分かっているが，以上のように問題を単純化することでさらに市場への理解を押し進めることができる．

投資家は，金融資産をうまく組み合わせて保有することによって，平均収益率を高く保ちつつ資産が減少するリスクを抑えることを試みる．これは古典的にマルコヴィッツの平均分散理論として定式化されている．今回は，平均分散問題 (Mean-Variance Problem, MV Problem) を強化学習によって解くことを提案した以下の論文を読んだので，解釈や途中式のフォローをまとめる．

- [Large scale continuous-time mean-variance portfolio allocation via reinforcement learning (Haoran Wang)](https://arxiv.org/abs/1907.11718)

# 2.Notations & Background
## 2.1Classical continuous-time MV Problem

安全資産が一つ，危険資産がd個存在する市場を考える．i番目の危険資産のt時点での価格S_t^iは次の幾何ブラウン運動に従う．

```math
dS_t^i=S_t^i(\mu^i+{}^\top\!\boldsymbol{\sigma}^idW_t)\tag{1}
```

幾何ブラウン運動とは，価格の「収益率」 (株価の何%が上昇/下落したか) が正規分布している，というモデルである．ただし，

```math
W_t=\begin{pmatrix}W_t^1\\ \vdots\\ W_t^d\end{pmatrix}
```

はd次元標準ブラウン運動で，

```math
\mu^i\in\mathbb{R},\ \ \boldsymbol{\sigma}^i=\begin{pmatrix}\sigma^{1i}\\ \vdots\\ \sigma^{di}\end{pmatrix}\in\mathbb{R}^d
```

は平均収益率とボラティリティである．ただし，平均ベクトルとボラティリティ行列を

```math
\boldsymbol{\mu}=\begin{pmatrix}\mu_1\\ \vdots\\ \mu_d\end{pmatrix},\ \ \boldsymbol{\sigma}=\begin{pmatrix}\boldsymbol{\sigma}^1 & \ldots &\boldsymbol{\sigma}^d\end{pmatrix}=\begin{pmatrix}\sigma^{11} & \ldots & \sigma^{1d}\\ \vdots & \ddots & \vdots\\ \sigma^{d1} & \ldots & \sigma^{dd} \end{pmatrix}
```

とし，市場のシャープ・レシオを

```math
\boldsymbol{\rho}=\boldsymbol{\sigma}^{-1}(\boldsymbol{\mu}-r{\bf 1})
```

と置く．今，投資家が初期資本x_0を元手にt時点において

```math
{\bf u}_t=\begin{pmatrix}u_t^1\\ \vdots\\ u_t^d\end{pmatrix}
```

をそれぞれの危険資産に投資し，残ったu_t^0を安全資産に投資することを考える．この時，t時点での投資家での投資家の総資産額：

```math
x_t^u=\sum_{i=0}^du_t^i
```

の変動を表す過程を富過程と呼び，次のSDEで表す．

```math
\begin{align}
dx_t^u&= ru_t^0dt+\sum_{i=1}^d\frac{u_t^i}{S_t^i}dS_t^i-rx_t^udt\\
&= -r(x_t^u-u_t^0)dt+\sum_{i=1}^du_t^i(\mu^i+{}^\top\!\boldsymbol{\sigma}^idW_t)\\
&= -r\sum_{i=1}^du_t^idt+\sum_{i=1}^du_t^i(\mu^i+{}^\top\!\boldsymbol{\sigma}^idW_t)\\
&= \sum_{i=1}^du_t^i\{(\mu^i-r)dt+{}^\top\!\boldsymbol{\sigma}^idW_t\}\\
&= {}^\top\!{\bf u}_t\{(\boldsymbol{\mu}-r{\bf 1})dt+{}^\top\!\boldsymbol{\sigma}dW_t\}\\
&= {}^\top\!(\boldsymbol{\sigma}{\bf u}_t)\{\boldsymbol{\sigma}^{-1}(\boldsymbol{\mu}-r{\bf 1})dt+dW_t\}\\
&= {}^\top\!(\boldsymbol{\sigma}{\bf u}_t)(\boldsymbol{\rho}dt+dW_t)\tag{2}
\end{align}
```

この時，投資家は次のリスク最小化問題を解く．すなわち，最終時点Tにおける富の期待値をzとし富の分散の最小化問題：

```math
\min_uVar(x_T^u)\ \ s.t.\ \ \mathbb{E}[x_T^u]=z\tag{3}
```

を解く．ただし，uは0からTまでのポートフォリオの列で，

```math
u=\{{\bf u}_t,\ 0\leq t\leq T\}
```

とおいた．今，ラグランジュ乗数をwとおくと，

```math
\begin{align}
\mathcal{L}&= Var(x_T^u)-2w(\mathbb{E}[x_T^u]-z)\\
&= \mathbb{E}[(x_T^u)^2]-z^2-2w(\mathbb{E}[x_T^u]-z)\\
&= \{\mathbb{E}[(x_T^u)^2]-2w\mathbb{E}[x_T^u]+w^2\}-(w^2-2zw+z^2)\\
&= \mathbb{E}[(x_T^u-w)^2]-(w-z)^2
\end{align}
```

より，条件付き最小化問題(3)は次のように置き換えられる．

```math
\min_u\mathbb{E}[(x_T^u-w)^2]-(w-z)^2
```

## 2.2Exploratory continuous-time MV problem

t期のポートフォリオを方策pi_tによって決定することを考える．すなわち，行動方策を

```math
\pi_t:\mathbb{R}^d\rightarrow[0,1]
```

という，t期の富x_tが与えられた時，危険資産にu_tだけ投資する確率を返す関数とおき，その全時間についての列を

```math
\pi=\{\pi_t,\ 0\leq t\leq T\}
```

とする．このようにポートフォリオu_tに分布pi_tを導入した富過程X_t^piとは，(2)式にu_tについて期待値を取ればよく，

```math
dX_t^\pi=\int_{\mathbb{R}^d}{}^\top\!\boldsymbol{\rho}\boldsymbol{\sigma}{\bf u}\pi_t({\bf u})d{\bf u}dt+\left(\int_{\mathbb{R}^d}{}^\top\!{\bf u}{}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma}{\bf u}\pi_t({\bf u})d{\bf u}\right)^{1/2}dB_t\tag{4}
```

となる．ただし，B_tは一次元標準ブラウン運動．次に，方策piの累積微分エントロピーを

```math
\mathcal{H}(\pi)=-\int_0^T\int_{\mathbb{R}^d}\pi_t({\bf u})\log\pi_t({\bf u})d{\bf u}dt\tag{5}
```

とおく．これは確率分布列piが持つ情報量を表す指標であり，これが小さければ方策の探索効率が高い，ということになる．探索重みをlambdaと置き，条件付き最小化問題(3)に探索の効率性を罰則項として追加すると，

```math
\min_\pi Var(X_T^\pi)+\lambda\mathcal{H}(\pi)\ \ s.t.\ \ \mathbb{E}[X_T^\pi]=z
```

と書け，

```math
\min_\pi\mathbb{E}[(X_T^\pi-w)^2+\lambda\int_0^T\int_{\mathbb{R}^d}\pi_t({\bf u})\log\pi_t({\bf u})d{\bf u}dt]-(w-z)^2\tag{6}
```

と書き直せる．

# 3.Optimality of Gaussian Exploration

(6)を部分問題に分解して解くことを考える．今t時点でX_t^pi=xだとした時の方策piの価値関数を

```math
V^\pi(t,x)=\mathbb{E}[(X_T^\pi-w)^2+\lambda\int_t^T\int_{\mathbb{R}^d}\pi_l({\bf u})\log\pi_l({\bf u})d{\bf u}dl\ |\ X_t^\pi=x]-(w-z)^2\tag{7}
```

とし，最適価値関数を

```math
V(t,x)=\inf_{\pi[t,T]}\mathbb{E}[(X_T^\pi-w)^2+\lambda\int_t^T\int_{\mathbb{R}^d}\pi_l({\bf u})\log\pi_l({\bf u})d{\bf u}dl\ |\ X_t^\pi=x]-(w-z)^2\tag{8}
```

と定義する．ただし，

```math
\pi[t,T]=\{\pi_s,\ t\leq s\leq T\}
```

と置いた．終端条件は

```math
V(T,x)=(x-w)^2-(w-z)^2
```

である．(8)式のうち，

```math
\varphi(X_T^\pi)=(X_T^\pi-w)^2
```

を終端コスト，

```math
L(X_l^\pi,\pi_l,l)=\int_{\mathbb{R}^l}\pi_l({\bf u})\log\pi_l({\bf u})d{\bf u}
```

をステージコストという．これを用いると，(8)式は

```math
V(t,x)=\inf_{\pi[t,T]}\mathbb{E}[\varphi(X_T^\pi)+\lambda\int_t^TL(X_l^\pi,\pi_l,l)dl\ |\ X_l^\pi=x]-(w-z)^2\tag{9}
```

と書くことができる．[t,T]を[t,t+dt]と[t+dt,T]に分割することで，

```math
\begin{align}
(9)&= \inf_{\pi[t,t+dt]}\mathbb{E}\left[\lambda\int_t^{t+dt}Ldl+\inf_{\pi[t+dt,T]}[\varphi+\lambda\int_{t+dt}^TLdl\ |\ X_{t+dt}^\pi=x+dX_l^\pi]\ |\ X_t^\pi=x\right]-(w-z)^2\\
&= \inf_{\pi[t,t+dt]}\mathbb{E}[V(t+dt,x+dX_t^\pi)+\lambda\int_t^{t+dt}Ldl\ |X_t^\pi=x]\tag{10}
\end{align}
```

とVは再帰的に書くことができる．Lなどの引数は省略した．(10)式第一項をテイラー展開して，

```math
V(t+dt,x+dX_t^\pi)=V(t,x)+V_t(t,x)dt+V_x(t,x)dX_t^\pi+\frac{1}{2}V_{xx}(t,x)(dX_t^\pi)^2
```

(10)式の右辺第二項は

```math
\int_t^{t+dt}L(X_l^\pi,\pi_l,l)dl\approx L(X_t^\pi,\pi_t,t)dt
```

なので，これらを(10)式に代入して，

```math
V(t,x)=V(t,x)+V_t(t,x)dt+\min_\pi\mathbb{E}[V_x(t,x)dX_t^\pi+\frac{1}{2}V_{xx}(t,x)(dX_t^\pi)^2+\lambda L(X_t^\pi,\pi_t,t)dt]
```

ゆえに，

```math
V_t(t,x)dt+\min_\pi\mathbb{E}[V_x(t,x)dX_t^\pi+\frac{1}{2}V_{xx}(t,x)(dX_t^\pi)^2+\lambda L(X_t^\pi,\pi_t,t)]=0
```

今，(4)式より，期待値の部分を積分に書き直せば，最適価値観数Vは次のHJB方程式を満たす．

```math
V_t(t,x)+\min_\pi\int_{\mathbb{R}^d}\left(\frac{1}{2}{}^\top\!{\bf u}{}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma}{\bf u}V_{xx}(t,x)+{}^\top\!\boldsymbol{\rho}\boldsymbol{\sigma}{\bf u}V_x(t,x)+\lambda\log\pi_t({\bf u})\right)\pi_t({\bf u})d{\bf u}=0\tag{11}
```

左辺の中の最小化問題を，確率分布piが全確率1を満たすことを用いて解く．ラグランジュ乗数をgammaと置くと，

```math
\begin{align}
\mathcal{L}&= \int_{\mathbb{R}^d}\left(\frac{1}{2}{}^\top\!{\bf u}{}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma}{\bf u}V_{xx}+{}^\top\!\boldsymbol{\rho}\boldsymbol{\sigma}{\bf u}V_x+\lambda\log\pi_t\right)\pi_td{\bf u}+\gamma\left(\int_{\mathbb{R}^d}\pi_t({\bf u})d{\bf u}-1\right)\\
\frac{\partial \mathcal{L}}{\partial\pi_t({\bf u})}&= \frac{1}{2}{}^\top\!{\bf u}{}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma}{\bf u}V_{xx}+{}^\top\!\boldsymbol{\rho}\boldsymbol{\sigma}{\bf u}V_x+\lambda\log\pi_t+\lambda+\gamma=0\\
\Rightarrow \pi_t^*({\bf u})&= C\exp\{-\frac{1}{\lambda}(\frac{1}{2}{}^\top\!{\bf u}{}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma}{\bf u}V_{xx}+{}^\top\!\boldsymbol{\rho}\boldsymbol{\sigma}{\bf u}V_x)\}\\
&= C\exp\{-\frac{V_{xx}}{2\lambda}({}^\top\!{\bf u}{}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma}{\bf u}+\frac{2V_x}{V_{xx}}{}^\top\!\boldsymbol{\rho}\boldsymbol{\sigma}{\bf u})\}\\
&= C\exp\{-\frac{V_{xx}}{2\lambda}({}^\top\!{\bf u}{}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma}{\bf u}+\frac{V_x}{V_{xx}}{}^\top\!{\bf u}{}^\top\!\boldsymbol{\sigma}\boldsymbol{\rho}+\frac{V_x}{V_{xx}}{}^\top\!\boldsymbol{\rho}\boldsymbol{\sigma}{\bf u}     )\}\\
&= C\exp\{-\frac{V_{xx}}{2\lambda}{}^\top\!({\bf u}+\frac{V_x}{V_{xx}}\boldsymbol{\sigma}^{-1}\boldsymbol{\rho}){}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma}({\bf u}+\frac{V_x}{V_{xx}}\boldsymbol{\sigma}^{-1}\boldsymbol{\rho})+\frac{V_x^2}{2\lambda V_{xx}}{}^\top\!\boldsymbol{\rho}\boldsymbol{\rho}\}\\
&= C\exp(\frac{V_x^2}{2\lambda V_{xx}}{}^\top\!\boldsymbol{\rho}\boldsymbol{\rho})\times\exp\{-\frac{V_{xx}}{2\lambda}{}^\top\!({\bf u}+\frac{V_x}{V_{xx}}\boldsymbol{\sigma}^{-1}\boldsymbol{\rho}){}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma}({\bf u}+\frac{V_x}{V_{xx}}\boldsymbol{\sigma}^{-1}\boldsymbol{\rho})\}\\
&= \mathcal{N}\left(-\boldsymbol{\sigma}^{-1}\boldsymbol{\rho}\frac{V_x}{V_{xx}},({}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma})^{-1}\frac{\lambda}{V_{xx}}\right)\tag{12}
\end{align}
```

ただし，Cは正規化定数である．正規分布の密度関数になるようにCを求める．

```math
\begin{align}
C\exp(\frac{V_x^2}{2\lambda V_{xx}}{}^\top\!\boldsymbol{\rho}\boldsymbol{\rho})&= \frac{|{}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma}|^{1/2}}{(2\pi\frac{\lambda}{V_{xx}})^{d/2}}\\
\therefore C&= \frac{|{}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma}|^{1/2}}{(2\pi\frac{\lambda}{V_{xx}})^{d/2}}\exp(-\frac{V_x^2}{2\lambda V_{xx}}{}^\top\!\boldsymbol{\rho}\boldsymbol{\rho})
\end{align}
```

これを(11)式の最小化問題の部分に代入すると，

```math
\begin{align}
\int_{\mathbb{R}^d}\left(\frac{1}{2}{}^\top\!{\bf u}{}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma}{\bf u}V_{xx}(t,x)+{}^\top\!\boldsymbol{\rho}\boldsymbol{\sigma}{\bf u}V_x(t,x)+\lambda\log\pi_t^*({\bf u})\right)\pi_t^*({\bf u})d{\bf u}&= \lambda\log C\\
&= \lambda\{-\frac{d}{2}\log(\frac{2\pi\lambda}{V_{xx}})+\frac{1}{2}\log|{}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma}|-\frac{V_x^2}{2\lambda V_{xx}}{}^\top\!\boldsymbol{\rho}\boldsymbol{\rho}   \}\tag{13}\\
\end{align}
```

(13)を(11)に代入することで，HJB方程式は


```math
V_t-\frac{{}^\top\!\boldsymbol{\rho}\boldsymbol{\rho}}{2}\frac{V_x^2}{V_{xx}}+\frac{\lambda}{2}\left(d-d\log(\frac{2\pi e\lambda}{V_{xx}})+\log(|{}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma}|)   \right)=0\tag{14}
```

これを解くと，

```math
\begin{align}
V(t,x)&= (x-w)^2\exp\{-{}^\top\!\boldsymbol{\rho}\boldsymbol{\rho}(T-t)\}+\frac{\lambda d}{4}{}^\top\!\boldsymbol{\rho}\boldsymbol{\rho}(T^2-t^2)\\
& \ \ \ \ -\frac{\lambda d}{2}({}^\top\!\boldsymbol{\rho}\boldsymbol{\rho}T-\frac{1}{d}\log\frac{|{}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma}|}{\pi\lambda})(T-t)-(w-z)^2\tag{15}
\end{align}
```

どうやって解いたのかは分からないが，実際，

```math
\begin{align}
V_t&= {}^\top\!\boldsymbol{\rho}\boldsymbol{\rho}(x-w)^2\exp\{-{}^\top\!\boldsymbol{\rho}\boldsymbol{\rho}(T-t)\}+\frac{\lambda d}{2}{}^\top\!\boldsymbol{\rho}\boldsymbol{\rho}t\\
&\ \ \ \ \ +\frac{\lambda d}{2}{}^\top\!\boldsymbol{\rho}\boldsymbol{\rho}T-\frac{\lambda}{2}\log\frac{|{}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma}|}{\pi\lambda}\tag{16}\\
V_x&= 2(x-w)\exp\{-{}^\top\!\boldsymbol{\rho}\boldsymbol{\rho}(T-t)\}\tag{17}\\
V_{xx}&= 2\exp\{-{}^\top\!\boldsymbol{\rho}\boldsymbol{\rho}(T-t)\}\tag{18}
\end{align}
```

を(14)式に代入すれば，HJB方程式が成り立つことがわかる．従って，(17),(18)を(12)に代入して，

```math
\pi_t^*({\bf u}|x,w)=\mathcal{N}\left(-\boldsymbol{\sigma}^{-1}\boldsymbol{\rho}(x-w),({}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma})^{-1}\frac{\lambda}{2}\exp\{-{}^\top\!\boldsymbol{\rho}\boldsymbol{\rho}(T-t)\}\right)\tag{19}
```


最適方策の分散を見ると，時間が進むにつれて分散が小さくなること，ボラティリティ行列が大きい (市場のランダム性が大きい) ならば探索努力を減らすことなどがわかる．ここで，(4)式に(19)を代入すると，最適富過程X_t^*は，

```math
dX_t^*=-{}^\top\!\boldsymbol{\rho}\boldsymbol{\rho}(X_t^*-w)dt+\left({}^\top\!\boldsymbol{\rho}\boldsymbol{\rho}(X_t^*-w)^2+\frac{\lambda}{2}\exp\{{}^\top\!\boldsymbol{\rho}\boldsymbol{\rho}(T-t)\}\right)^{1/2}dB_t
```

# 4.RL Algorithm Design
## 4.1 Policy Improvement Theorem(1)

wを所与とすると，任意のpiに対し価値観数V^piが存在する．今，新しい方策：

```math
\tilde{\pi}_t({\bf u}|x,w)=\mathcal{N}\left(-\boldsymbol{\sigma}^{-1}\boldsymbol{\rho}\frac{V_x^\pi}{V_{xx}^\pi},({}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma})^{-1}\frac{\lambda}{V_{xx}^\pi}\right)
```

とおけば，この方策は元の方策piよりも改善される．

```math
V^{\tilde{\pi}}(t,x;w)\leq V^\pi(t,x;w)
```

## 4.2Policy Improvement Theorem(2)

初期方策を

```math
\pi_t^0({\bf u}|x,w)=\mathcal{N}\left(\boldsymbol{\alpha}(x-w),\Sigma\exp\{\beta(T-t)\}\right),\ \ \boldsymbol{\alpha}\in\mathbb{R}^d,\ \Sigma\in\mathbb{R}^{d\times d},\ \beta\in\mathbb{R}
```

とおき，自然数nに対しpi^nを

```math
\pi_t^n({\bf u}|x,w)=\mathcal{N}\left(-\boldsymbol{\sigma}^{-1}\boldsymbol{\rho}\frac{V_x^{\pi^{n-1}}}{V_{xx}^{\pi^{n-1}}},({}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma})^{-1}\frac{\lambda}{V_{xx}^{\pi^{n-1}}}    \right)
```

とおくと，n->inftyの時，pi^nはpi^*に収束する．

```math
\lim_{n\rightarrow\infty}V^{\pi^n}(t,x;w)=V(t,x;w)
```

## 4.3 EMV Algorithm

以上の方策改善定理を用いて，最適方策を探索するアルゴリズムを提案する．今，方策piのベルマン方程式は

```math
\begin{align}
V^\pi(t,x)&= \mathbb{E}[V^\pi(t+\Delta t,X_{t+\Delta t})+\lambda\int_t^{t+\Delta t}\int_{\mathbb{R}^d}\pi_v({\bf u})\log\pi_v({\bf u})d{\bf u}dv\ |\ X_t=x]\\
&\approx \mathbb{E}[V^\pi(t+\Delta t,X_{t+\Delta t})+\lambda\Delta t\int_{\mathbb{R}^d}\pi_v({\bf u})\log\pi_v({\bf u})d{\bf u}\ |\ X_t=x]
\end{align}
```

である．両辺をDelta tで割って移項することで，

```math
\mathbb{E}[\frac{V^\pi(t+\Delta t,X_{t+\Delta t})-V^\pi(t ,X_t)}{\Delta t}+\lambda\int_{\mathbb{R}^d}\pi_v({\bf u})\log\pi_v({\bf u})d{\bf u}\ |\ X_t=x]=0
```

今，ベルマン残差を

```math
\begin{align}
\delta_t&= \dot{V}_t^\pi+\lambda\int_{\mathbb{R}^d}\pi_v({\bf u})\log\pi_v({\bf u})d{\bf u}\\
&= \frac{V^\pi(t+\Delta t,X_{t+\Delta t})-V^\pi(t,X_t)}{\Delta t}+\lambda\int_{\mathbb{R}^d}\pi_v({\bf u})\log\pi_v({\bf u})d{\bf u}
\end{align}
```

とおき，これを全時間について最小化することを考える．つまり，Vおよびpiをパラメトライズし，

```math
\begin{align}
C(\boldsymbol{\theta},\boldsymbol{\phi})&= \frac{1}{2}\mathbb{E}[\int_0^T|\delta_t|^2dt]\\
&= \frac{1}{2}\mathbb{E}[\int_0^T|\dot{V}_t^{\boldsymbol{\theta}}+\lambda\int_{\mathbb{R}^d}\pi_t^{\boldsymbol{\phi}}({\bf u})\log\pi_t^{\boldsymbol{\phi}}({\bf u})d{\bf u}|^2dt]
\end{align}
```

を最小化すれば良い．次に，[0,T]区間を

```math
[t_i,t_{i+1}],\ i=0,...,l\ \ (t_0=0,t_{l+1}=T)
```

と離散化し，

```math
\mathcal{D}=\{(t_i,x_i),\ i=0,1,...,l+1\}
```

と置くと，

```math
C(\boldsymbol{\theta},\boldsymbol{\phi})=\frac{1}{2}\sum_{(t_i,x_i)\in\mathcal{D}}\{\dot{V}_t^{\boldsymbol{\theta}}(t_i,x_i)+\lambda\int_{\mathbb{R}^d}\pi_{t_i}^{\boldsymbol{\phi}}({\bf u})\log\pi_{t_i}^{\boldsymbol{\phi}}({\bf u})d{\bf u}\}^2\Delta t\tag{20}
```

と推定できる．今，Policy Improvement Theorem(2)に基づき，分散が

```math
C_1\exp\{c_2(T-t)\},\ \ C_1\in\mathbb{R}^{d\times d},\ c_2\in\mathbb{R}
```

の形で書ける方策を考えると，そのエントロピーとは，

```math
\begin{align}
\mathcal{H}(\pi_t^{\boldsymbol{\phi}})&= \frac{d}{2}\log(2\pi e)+\frac{d}{2}c_2(T-t)+\frac{1}{2}\log(|C_1|)\\
&= \frac{d}{2}\log(2\pi e)+\frac{1}{2}\log(|{}^\top\!\boldsymbol{\phi}_1\boldsymbol{\phi}_1|)+\phi_2(T-t),\ \ \boldsymbol{\phi}_1\in\mathbb{R}^{d\times d},\ \phi_2>0\tag{21}
\end{align}
```

の形で書ける．一方，(15)式を参考に推定価値関数を

```math
V^{\boldsymbol{\theta}}(x,w)=(x-w)^2\exp\{-{}^\top\!\boldsymbol{\theta}_3\boldsymbol{\theta}_3(T-t)\}+\theta_2t^2+\theta_1t+\theta_0,\ \ \boldsymbol{\theta}_3\in\mathbb{R}^d,\ \theta_2,\theta_1,\theta_0\in\mathbb{R}
```

と定義すれば，xによる一階微分，二階微分は

```math
\begin{align}
V_x^{\boldsymbol{\theta}}(x,w)&= 2(x-w)\exp\{-{}^\top\!\boldsymbol{\theta}_3\boldsymbol{\theta}_3(T-t)\}\tag{22}\\
V_{xx}^{\boldsymbol{\theta}}(x,w)&= 2\exp\{-{}^\top\!\boldsymbol{\theta}_3\boldsymbol{\theta}_3(T-t)\}\tag{23}
\end{align}
```

ゆえに，Policy Improvement Theorem(2)に従って方策を更新するときの方策の分散は

```math
({}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma})^{-1}\frac{\lambda}{V_{xx}^{\boldsymbol{\theta}}}=({}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma})^{-1}\frac{\lambda}{2}\exp\{-{}^\top\!\boldsymbol{\theta}_3\boldsymbol{\theta}_3(T-t)\}
```

これを用いると，エントロピーは

```math
\mathcal{H}(\pi_t^{\boldsymbol{\phi}})=\frac{d}{2}\log(2\pi e)+\frac{d{}^\top\!\boldsymbol{\theta}_3\boldsymbol{\theta}_3}{2}(T-t)+\frac{1}{2}\log\{\frac{d\lambda}{2}|({}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma})^{-1}|\}\tag{24}
```

(21),(24)より，

```math
\frac{d{}^\top\!\boldsymbol{\theta}_3\boldsymbol{\theta}_3}{2}=\phi_2\ \ \Rightarrow\ \ {}^\top\!\boldsymbol{\rho}\boldsymbol{\rho}={}^\top\!\boldsymbol{\theta}_3\boldsymbol{\theta}_3=\frac{2\phi_2}{d}\tag{25}
```

である．また

```math
\log\{|({}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma})^{-1}|\}=\log|\frac{2}{\lambda}{}^\top\!\boldsymbol{\phi}_1\boldsymbol{\phi}_1|\ \ \Rightarrow\ \ ({}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma})^{-1}=\frac{2}{\lambda}{}^\top\!\boldsymbol{\phi}_1\boldsymbol{\phi}_1\tag{26}
```

従って，改善方策は(22),(23),(25),(26)を用いると

```math
\begin{align}
\pi_t({\bf u}|x,w)&= \mathcal{N}\left(-\boldsymbol{\sigma}^{-1}\boldsymbol{\rho}(x-w),({}^\top\!\boldsymbol{\sigma}\boldsymbol{\sigma})^{-1}\frac{\lambda}{2}\exp\{{}^\top\!\boldsymbol{\theta}_3\boldsymbol{\theta}_3(T-t)\}\right)\\
&= \mathcal{N}\left(-\sqrt{\frac{2}{\lambda}}\boldsymbol{\phi}_1\boldsymbol{\theta}_3(x-w),{}^\top\!\boldsymbol{\phi}_1\boldsymbol{\phi}_1\exp\{{}^\top\!\boldsymbol{\theta}_3\boldsymbol{\theta}_3(T-t)\}\right)
\end{align}
```

また，

```math
\begin{align}
\frac{\partial}{\partial\theta_1}\dot{V}^{\boldsymbol{\theta}}(t_i,x_i)&= \frac{\partial}{\partial\theta_1}\frac{V^{\boldsymbol{\theta}}(t_{i+1},x_{i+1})-V^{\boldsymbol{\theta}}(t_{i},x_{i})}{\Delta t}\\
&= \frac{t_{i+1}-t_i}{\Delta t}=1\\
\frac{\partial}{\partial\theta_2}\dot{V}^{\boldsymbol{\theta}}(t_i,x_i)&= \frac{t_{i+1}^2-t_i^2}{\Delta t}\\
\frac{\partial}{\partial\boldsymbol{\theta}_3}\dot{V}^{\boldsymbol{\theta}}(t_i,x_i)&= \frac{-2(x_{i+1}-w)^2\exp\{-{}^\top\!\boldsymbol{\theta}_3\boldsymbol{\theta}_3(T-t_{i+1})\}(T-t_{i+1})\boldsymbol{\theta}_3+2(x_{i}-w)^2\exp\{-{}^\top\!\boldsymbol{\theta}_3\boldsymbol{\theta}_3(T-t_{i})\}(T-t_{i})\boldsymbol{\theta}_3}{\Delta t}
\end{align}
```

であることなどを用いて，

```math
\begin{align}
\frac{\partial}{\partial\theta_1}C(\boldsymbol{\theta},\boldsymbol{\phi})&= \frac{\partial}{\partial\theta_1}\frac{1}{2}\sum_i\left[\dot{V}^{\boldsymbol{\theta}}(t_i,x_i)-\lambda\{\frac{d}{2}\log(2\pi e)+\frac{1}{2}\log(|{}^\top\!\boldsymbol{\phi}_1\boldsymbol{\phi}_1|)+\phi_2(T-t_i)\}\right]^2\Delta t\\
&= \sum_i\left[\dot{V}^{\boldsymbol{\theta}}(t_i,x_i)-\lambda\{\frac{d}{2}\log(2\pi e)+\frac{1}{2}\log(|{}^\top\!\boldsymbol{\phi}_1\boldsymbol{\phi}_1|)+\phi_2(T-t)\}\right]\frac{\partial}{\partial\theta_1}\dot{V}(t_i,x_i)\Delta t\\
&= \sum_i\left[\dot{V}^{\boldsymbol{\theta}}(t_i,x_i)-\lambda\{\frac{d}{2}\log(2\pi e)+\frac{1}{2}\log(|{}^\top\!\boldsymbol{\phi}_1\boldsymbol{\phi}_1|)+\phi_2(T-t_i)\}\right]\Delta t\tag{27}\\
\frac{\partial}{\partial \theta_2}C(\boldsymbol{\theta},\boldsymbol{\phi})&= \frac{\partial}{\partial \theta_2}\frac{1}{2}\sum_i\left[\dot{V}^{\boldsymbol{\theta}}(t_i,x_i)-\lambda\{\frac{d}{2}\log(2\pi e)+\frac{1}{2}\log(|{}^\top\!\boldsymbol{\phi}_1\boldsymbol{\phi}_1|)+\phi_2(T-t_i)\}\right]^2\Delta t\\
&= \sum_i\left[\dot{V}^{\boldsymbol{\theta}}(t_i,x_i)-\lambda\{\frac{d}{2}\log(2\pi e)+\frac{1}{2}\log(|{}^\top\!\boldsymbol{\phi}_1\boldsymbol{\phi}_1|)+\phi_2(T-t_i)\}\right](t_{i+1}^2-t_i^2)\tag{28}\\
\frac{\partial}{\partial\boldsymbol{\phi}_1}C(\boldsymbol{\theta},\boldsymbol{\phi})&= \frac{\partial}{\partial\boldsymbol{\phi}_1}\frac{1}{2}\sum_i\left[\dot{V}^{\boldsymbol{\theta}}(t_i,x_i)-\lambda\{\frac{d}{2}\log(2\pi e)+\frac{1}{2}\log(|{}^\top\!\boldsymbol{\phi}_1\boldsymbol{\phi}_1|)+\phi_2(T-t_i)\}\right]^2\Delta t\\
&= \sum_i\left[\dot{V}^{\boldsymbol{\theta}}(t_i,x_i)-\lambda\{\frac{d}{2}\log(2\pi e)+\frac{1}{2}\log(|{}^\top\!\boldsymbol{\phi}_1\boldsymbol{\phi}_1|)+\phi_2(T-t_i)\}\right]\Delta t\times2\boldsymbol{\phi}_1^{-1}\tag{29}\\
\frac{\partial}{\partial\boldsymbol{\theta}_3}C(\boldsymbol{\theta},\boldsymbol{\phi})&= \sum_i\left[\dot{V}^{\boldsymbol{\theta}}(t_i,x_i)-\lambda\{\frac{d}{2}\log(2\pi e)+\frac{1}{2}\log(|{}^\top\!\boldsymbol{\phi}_1\boldsymbol{\phi}_1|)+\frac{d{}^\top\!\boldsymbol{\theta}_3\boldsymbol{\theta}_3}{2}(T-t_i)\} \right]\Delta t\\
&\ \ \ \left(\frac{-2(x_{i+1}-w)^2\exp\{-{}^\top\!\boldsymbol{\theta}_3\boldsymbol{\theta}_3(T-t_{i+1})\}(T-t_{i+1})\boldsymbol{\theta}_3+2(x_{i}-w)^2\exp\{-{}^\top\!\boldsymbol{\theta}_3\boldsymbol{\theta}_3(T-t_{i})\}(T-t_{i})\boldsymbol{\theta}_3}{\Delta t}-\lambda d\boldsymbol{\theta}_3(T-t_i)\right)\tag{30}
\end{align}
```

と(25)，

```math
\begin{align}
\theta_0&= -\theta_2T^2-\theta_1T-(w-z)^2\tag{31}\\
w_{n+1}&= w_n-\alpha_n(X_T-z)\tag{32}
\end{align}
```

よりパラメータを更新できる．

# 5.実験結果
S&P500の株のうち適当に10個を選んで売買のシミュレーションを行う．論文のExperimentを再現したいと思い著者に連絡を取ってみたものの返信を得られなかったためアルゴリズムの細部は想像に頼りながら実装した．以下の図がエピソードを通じたバリデーションTD誤差と投資期間終了後の収益率の推移である．TD誤差は順調に下がっており，最終収益率は徐々に大きく下振れすることが少なくなっていて，リスクを抑える戦略を学習していることがわかる，
![スクリーンショット 2021-10-13 16.06.16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1702786/03ee90ec-b011-d12f-c433-7de81721da1e.png)
課題は，考慮する資産の数dが多くなると学習が不安定になる点である．試しに350次元で実験してみると非常に低い学習率にしないと実行できなかった．またd*dの行列式，逆行列を求めるためdが増えるに従って実行時間も長くなってしまう．