📔

Botter自主ゼミノート 2.1 確率過程とは?, 2.2 確率過程の数学的表現

2022/11/15に公開

やること

https://www.amazon.co.jp/dp/4254209444
を読んで、確率微分方程式による最適化問題を解けるようになることです。

これまでのBotter自主ゼミノート

Botter自主ゼミノート 1.2 確定システムの制御の回顧

2.1 確率過程とは?

見本過程 (sample path)

  • 測定のたびに異なった波形が得られ、再現性がまったくない測定データのこと
  • 確率過程の世界では、偶然性を支配する要因の集合\Omega = \{\omega_i, i = 1, 2, \cdots \} (見本空間)の中から、一つの要素\omega \in \Omegaが偶然的に一つ定められるものと考える
  • 観測対象のシステムそのものに不規則な外乱が介入している場合、そのシステムの状態量は\{x(t, \omega), t_0 \le t < \infty }t$と記述できる

確率過程 (stochastic process)

  • 時間変数tを偶然性を意味する変数\omegaとの関数として表される関数の集合\{x(t,\omega)\}\{y(t, \omega)\}のこと

確率変数 (generic point)

  • 確率過程\{x(t, \omega)\}がある時、時間変数tを固定すると、{x(t, \cdot)}は偶然性を表す\omega \in \Omegaのみの関数となり、この関数のことを確率変数と呼ぶ
  • この時の\omega生成点と呼ぶ

見本過程あるいは実現値 (realization)

  • 確率過程\{x(t, \omega)\}がある時、偶然性を表す変数\omegaを固定すると、{x(\cdot, \omega)}は時間を表すtのみの関数となり、この関数のことを見本過程と呼ぶ

メモ

  • これといった疑問点はなかった。
  • ストキャスティクという言葉の意味をちゃんと覚えた

2.2 確率過程の数学的表現

事象 (event)

  • 時間集合Tに属する任意の時刻集合\left\{t_1, t_2, \cdots, t_n\right\}をとり、それぞれの時刻t_iにおいて任意の実数a_i (=\infty < a_i < \infty)を与えたとき、x(t_i, \omega) \le a_iとなること
  • このとき、\omegaの集合\{ \omega:x(t_i, \omega) \le a_i \}\Omegaの部分集合となっている

事象が生起する確率 (probability)

  • P_r\left\{x(t_1, \omega) \le a_1, x(t_2, \omega) \le a_2, \cdots , x(t_n, \omega) \le a_n\right\} で定義される
  • この時、\{a_i\}は各時刻t_iに設けられたゲートのようなものとして考えるとわかりやすい。確率P_rは各時刻に設定されたゲートa_iをすべて無事に通過できるかどうかの目安を与えていて、特定の道筋を通る確率過程の集合を確率的に捉えることが可能となる

n次の結合確率分布関数 (離散時間)

  • F(t_1,x_1;\cdots;t_n,x_n) := P_r \left\{ x(t_1,\omega) \le x_1, x(t_2,\omega) \le x_2, \cdots , x(t_n,\omega) \le x_n\right\}で定義される
  • ここで、\left\{ x(t_1,\omega) \le x_1, x(t_2,\omega) \le x_2, \cdots , x(t_n,\omega) \le x_n\right\} = \left\{ x(t_1,\omega) \le x_1 \right\} \cap \cdots \cap \left\{ x(t_n,\omega) \le x_n \right\}

n次の結合確率密度分布関数 (nth joint probability density function) (連続時間)

  • 以下のいずれかで表現されるp(t_1,x_1;\cdots;t_n,x_n)のこと
  • F(t_1,x_t;\cdots;t_n,x_n)=\int_{-\infty}^{x_1} \cdots \int_{-\infty}^{x_n} p(t_1,\xi;\cdots;t_n, \xi_n)d\xi_1 \cdots d\xi_n
  • p(t_1,x_1;\cdots;t_n,x_n) = \frac{\partial^n F(t_1,x_1;\cdots;t_n,x_n)}{\partial x_1 \cdots \partial x_n}
  • t_1t_2の二つの時点だけしかない単純なケースを考えるとわかりやすい
  • n次元ベクトル確率過程 (n-vector stochastic process)
    • x(t,\omega) = \left[x_1(t,\omega), x_2(t,\omega), \cdots , x_n(t,\omega) \right]^{T}のこと
    • 確率分布関数と確率密度関数が定義できる

メモ

  • 2.2で複数回積分をしているところのイメージがつかみにくかったけれど、blue271828's misc :-)の二次元の確率分布関数の図と説明を見たらイメージしやすくなった
  • 上のページにサンプルコードがついていたので、2次元確率密度関数と2次元累積確率密度関数をプロットしてみた。
from scipy.stats import norm
from mpl_toolkits import mplot3d

import numpy as np
import matplotlib.pyplot as plt
import japanize_matplotlib

x = np.arange(-5, 5, 0.1)
xx, yy = np.meshgrid(x, x) 

p_1 = norm.pdf(xx, 0, 1)
p_2 = norm.pdf(yy, 0, 1)

p = p_1 * p_2

p_cumsum_axis0 = p.cumsum(axis = 0)
p_cumsum_axis01 = p_cumsum_axis0.cumsum(axis = 1)

plt.figure()
ax = plt.axes(projection = "3d")
plt.title("2変数正規分布の確率密度分布")
ax.set_xlabel("$x$")
ax.set_ylabel("$y$")
ax.set_zlabel("$z$")
ax.plot_surface(xx, yy, p, cmap='coolwarm')
plt.show()

plt.figure()
ax = plt.axes(projection = "3d")
plt.title("2変数正規分布の累積確率密度分布")
ax.set_xlabel("$x$")
ax.set_ylabel("$y$")
ax.set_zlabel("$z$")
ax.plot_surface(xx, yy, p_cumsum_axis01 / np.max(p_cumsum_axis01), cmap='coolwarm')
plt.show()

Discussion