《両的計画》
【りょうてきけいかく (bynamic programming)】
動的計画法は単調性 monotonicity と再帰性 recursiveness (可分性 separability) の下で適用される. この単調性は目的関数の「非減少性」を意味しているが, これを両調性bitonicity「非減少性または非増加性のいずれか」まで拡大解釈すると, より広い逐次決定過程が考えられる. これを両的計画と呼ぶ. 特に, 確率システム上ではマルコフ両決定過程[3]という. これは確率的動的計画法を単にマルコフ決定過程ということに準じている.
両的計画法によって最大化問題を解く場合, 与問題に対する部分最大化問題群ばかりでなく部分最小化問題群をも考える必要がある. このとき, 最大値関数と最小値関数の間に成り立つ連立再帰式を両帰式(動的計画法における) という. 負値乗法型評価系[1], 負値乗加法型評価系 [2] の最適化問題や最短最長ルート問題などは両帰式で解ける.
さて, 逐次決定過程が次の要素で与えられるとしよう: \begin{eqnarray} & & S~ \mbox{は状態空間},~~s_{n} \in S~ \mbox{は第}n\mbox{状態},~~A~
\mbox{は決定空間} \nonumber \\
& & A(s_{n})~ \mbox{は}s_{n}\mbox{での可能決定空間},~~a_{n} \in A(s_{n})
\mbox{は第}n\mbox{決定} \nonumber \\
& & r : S \times A \to \mbox{\bf R}^{1}~\mbox{は利得関数},~~\beta : S \times A \to
(-1,\,1)~\mbox{は割引き関数} \nonumber \\
& & k : S \to \mbox{\bf R}^{1}~\mbox{は終端関数},~~ T : S \times A \to
S~\mbox{は状態変換} \nonumber \\
& & p = \{p(t|s,a)\}~\mbox{はマルコフ推移法則},~~\sum_{t \in S}p(t|s,a) = 1,
~p(t|s,a) \ge 0 \nonumber
\end{eqnarray}
このとき, 確定系上の負値乗加法評価系の最大化または最小化は
\begin{eqnarray}
& & {\rm max.~and~min.} \hspace{2mm} r_{1} + \beta_{1}r_{2} +
\beta_{1}\beta_{2}r_{3} + \cdots \nonumber \\[-2.10mm]
& & \hspace*{30mm} + \beta_{1}\beta_{2} \cdots \beta_{N-1}r_{N} +
\beta_{1}\beta_{2} \cdots \beta_{N}k \nonumber \\
& & \mbox{s. t.} \hspace{2mm} T(s_n,a_n) = s_{n+1}, ~ a_{n} \in A(s_{n}) \hspace{4mm} (n = 1, 2, \ldots, N),
\nonumber
\end{eqnarray}
で表わされる. ただし ~$ r_{n} = r(s_{n},a_{n}),~~\beta_{n} =
\beta(s_{n},a_{n}).$
このとき, 第$n$段の状態 $ s_{n} $ から始まる部分問題 \begin{eqnarray} & & {\rm max.~and~min.} \hspace{2mm} r_{n} + \beta_{n}r_{n+1} +
\beta_{n}\beta_{n+1}r_{n+2} + \cdots \nonumber \\[-2.10mm]
& & \hspace*{28mm} + \beta_{n}\beta_{n+1} \cdots \beta_{N-1}r_{N} +
\beta_{n}\beta_{n+1} \cdots \beta_{N}k \nonumber \\
& & \mbox{s. t.} \hspace{2mm} T(s_m,a_m) = s_{m+1}, ~ a_{m} \in A(s_{m}) \hspace{4mm} (m = n, n+1, \ldots, N ), \nonumber \end{eqnarray} の最大値を $ U_{n}(s_{n}) $, 最小値を $ u_{n}(s_{n}) $
とすると, 両最適値関数は両帰式 \begin{eqnarray}
&& U_{n}(s) = \mathopテンプレート:\rm max_{a:-}T(s,a; u_{n+1}) \vee \mathop{{\rm
max}}_{a:+}T(s,a; U_{n+1}) \nonumber \\
&& u_{n}(s) = \mathopテンプレート:\rm min_{a:-}T(s,a; U_{n+1}) \wedge \mathop{{\rm
min}}_{a:+}T(s,a; u_{n+1}) \label{eqn:A-E-02+dbe00} \\
&& U_{N+1}(s) = u_{N+1}(s) = k(s) \nonumber \end{eqnarray} を満たす. ここに~ $ T(s,a; w) := r(s,a) + \beta(s,a)w(T(s,a)), $~ $a:-(+)$
は $ \beta(s,a) <(\ge)\, 0 $ なる $a$ である. \par
% % また, マルコフ推移法則 $ p = \{p(t|s,a)\} $ 上での期待値最適化問題
\begin{eqnarray}
& & {\rm max.~and~min.} \hspace{2mm} E[\,r_{1} + \beta_{1}r_{2} +
\beta_{1}\beta_{2}r_{3} + \cdots \nonumber \\[-2.10mm]
& & \hspace*{42mm} + \beta_{1}\beta_{2} \cdots \beta_{N-1}r_{N} +
\beta_{1}\beta_{2} \cdots \beta_{N}k\,] \nonumber \\
& & \mbox{s. t.} \hspace{2mm} p(\cdot|s_n,a_n) \sim s_{n+1}, ~ a_{n} \in A(s_{n}) \hspace{4mm}
(n = 1,2, \ldots ), \nonumber
\end{eqnarray}
の両帰式は一次変換
$$
T(s,a; w) := r(s,a) + \beta(s,a) {\displaystyle \sum_{t \in S}w(t)p(t|s,a)}
$$
を用いて(\ref{eqn:A-E-02+dbe00})と同じ型で与えられる[4].
参考文献
[1] R. Bellman, Dynamic Programming, Princeton Univ. Press, 1957.
[2] S. Iwamoto, "From Dynamic Programming to Bynamic programming," Journal of Mathematical Analysis and Applications, 177 (1993), 56-74.
[3] S. Iwamoto, "On Bidecision Processes," Journal of Mathematical Analysis and Applications, 187 (1994), 676-699.
[4] T. Fujita and K. Tsurusaki, "Stochastic Optimization of Multiplicative Functions with Negative Value," Journal of the Operations Research Society of Japan, 41 (1998), 351-373.