「不変埋没原理」の版間の差分
(基礎編と用語編のマージ) |
|||
1行目: | 1行目: | ||
'''【ふへんまいぼつげんり (principle of invariant imbedding)】''' | '''【ふへんまいぼつげんり (principle of invariant imbedding)】''' | ||
+ | === 概要 === | ||
動的計画法の基本原理の1つ. ある問題を解こうとするとき, この問題を含む部分問題からなる群(族)を考える. これを「埋め込み」という. ただし, それぞれの問題の「構造」は不変である. このとき, 問題の大きさは小さいものから大きいものまであり, 「1番大きい」問題が与問題である. 相隣る問題間の関係式を導き, これを解くことによって, 与問題の「解」を求める. 埋め込み方に工夫を要する. | 動的計画法の基本原理の1つ. ある問題を解こうとするとき, この問題を含む部分問題からなる群(族)を考える. これを「埋め込み」という. ただし, それぞれの問題の「構造」は不変である. このとき, 問題の大きさは小さいものから大きいものまであり, 「1番大きい」問題が与問題である. 相隣る問題間の関係式を導き, これを解くことによって, 与問題の「解」を求める. 埋め込み方に工夫を要する. | ||
− | + | === 詳説 === | |
+ | ある問題を解こうとするとき, この問題を含む部分問題からなる群(族)を考えることを「埋め込み」(imbedding)という. すなわち, 与問題をある問題群の1つと見做すことである. このとき, 問題の大きさは小さい(易しい)ものから大きい(難しい)ものまであり, 一番大きい(解きたい)問題が与問題である. しかし, 問題の「構造」は不変である. さらに, 相隣る問題間の関係式を導き, これを解くことによって, 与問題の「解」を求める. このような方法で解に至るまでを, [[不変埋没原理]] (principle of invariant imbedding)による方法という [1] [4] [5]. | ||
+ | |||
+ | たとえば,「1から10までの自然数の和を求める」問題を考えてみよう. 以下ではいつも「1から」(前向きの方法で)考えることにして, この問題を <math>{\rm P}(10)\, </math> で表わし, 「解」(この場合, 和)を <math>S(10)\, </math> としよう. このとき, 「1から <math>n\, </math> までの自然数の和を求める」部分問題 <math>{\rm P}(n)\, </math> からなる群 <math>\{ {\rm P}(n); n = 1, 2, \ldots , 10\}\, </math> を考える. このこと自体が埋め込みである. 部分問題 <math>{\rm P}(n)\, </math> の解(<math>=\, </math>和)を <math>S(n)\, </math> とする. 最後の(一番大きい)問題 <math>{\rm P}(10)\, </math> の解 <math>S(10)\, </math> が求める解である. このとき, 最初の (一番易しい) 問題の解は <math>S(1) = 1\, </math> であり, 相隣る問題の解 <math>S(n)\, </math> と <math>S(n+1)\, </math> の間に漸化式 | ||
+ | |||
+ | |||
+ | <center> | ||
+ | <math>S(n+1) = S(n) + n+1 \quad n = 1, 2, \ldots , 9; \quad S(1) = 1\, </math> | ||
+ | </center> | ||
+ | |||
+ | |||
+ | が成り立つ. 漸化式を <math>S(1), S(2), \ldots\, </math> の順に前向きに逐次解くことによって, <math>S(10) = 55\, </math> を得る. 他方, 「<math>n\, </math> から(いつも!)10までの自然数の和を求める」部分問題 <math>{\rm Q}(n)\, </math> の族を考えても, 上述と同様に解くことができる. これを後向きの埋め込みという. | ||
+ | |||
+ | 一般の問題では, どのような大きさの問題群に埋め込むか, 関係式が導けるか, 解けるか, 解き易いかなど, 埋め込み方に工夫を要する. たとえば, 多段階の最適化問題 | ||
+ | |||
+ | |||
+ | <table align="center"> | ||
+ | <tr> | ||
+ | <td><math>\mbox{max.} ~~ \psi(g_{1}(x_{1},x_{2}) \circ g_{2}(x_{2},x_{3}) \circ | ||
+ | \cdots \circ g_{N}(x_{N},x_{N+1}) \circ k(x_{N+1})) \, </math> | ||
+ | </td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td><math>\mbox{s. t.} ~~~ x_{n+1} \in A_{n}(x_{n}) \quad (1 \le n \le N), \, </math> | ||
+ | </td> | ||
+ | </tr> | ||
+ | </table> | ||
+ | |||
+ | |||
+ | の最大値 <math>u_{1}(x_{1})\, </math> と最大点 <math>x^{*} = (x_{1}, x_{2}^{*}, \ldots , x_{N+1}^{*})\, </math> を求めるには, 新たなパラメータ <math>\lambda_{n} (\in \Lambda_{n}(x_{n}))\, </math> を含む部分問題群 <math>{\mathcal P} = \{ {\rm P}_{n}(x_{n};\lambda_{n}) \}\, </math> : | ||
+ | |||
+ | |||
+ | <table align="center"> | ||
+ | <tr> | ||
+ | <td><math>{\rm max.}~~ \psi(\lambda_{n} \circ g_{n}(x_{n},x_{n+1}) \circ \cdots | ||
+ | \circ g_{N}(x_{N},x_{N+1}) \circ k(x_{N+1})) \, </math></td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td><math>\begin{array}{l}\mbox{s. t.} ~~~ x_{m+1} \in A_{m}(x_{m}) \quad (n \le m \le N), \\ | ||
+ | ~~~~ x_{n} \in X_{n}, \; \lambda_{n} \in \Lambda_{n}(x_{n}), ~ (1 \le n \le N+1), | ||
+ | \end{array} \, </math></td> | ||
+ | </tr> | ||
+ | </table> | ||
+ | |||
+ | |||
+ | に埋め込むと, パラメータ空間列 <math>\{\Lambda_{n}(\cdot)\}\, </math> は前向きの再帰式 | ||
+ | |||
+ | |||
+ | <table align="center"> | ||
+ | <tr> | ||
+ | <td><math>\Lambda_{1}(x) = \{ \tilde{\lambda}\},~~x \in X_{1}\, </math> <math>(\tilde{\lambda}\, </math>は結合演算<math>\circ\, </math>の左単位元<math>)\, </math> </td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td><math>\begin{array}{lr} | ||
+ | \Lambda_{n+1}(y) = & \{\, \lambda \circ g_{n}(x,\,y) \, | \, \lambda \in \Lambda_{n}(x),~y \in A_{n}(x) \, \} \\ | ||
+ | & y \in X_{n+1},~~ n = 1, 2, \ldots , N | ||
+ | \end{array}\, </math></td> | ||
+ | </tr> | ||
+ | </table> | ||
+ | |||
+ | |||
+ | で生成され, 最適値関数 <math>u_{n} = u_{n}(x_{n};\lambda_{n})\, </math>は次の後向き再帰式を満たす: | ||
+ | |||
+ | |||
+ | <table align="center"> | ||
+ | <tr> | ||
+ | <td><math>u_{n}(x; \lambda) = \max_{y \in A_{n}(x)}u_{n+1}(\,y\,; | ||
+ | \lambda \circ g_{n}(x,\,y))\, </math></td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td align="right"><math>~~~~x \in X_{n}, ~~\lambda \in \Lambda_{n}(x),~~ n = 1, 2, \ldots , N\, </math></td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td><math>u_{N+1}(x; \lambda) = \psi(\lambda \circ k(x))~~x \in X_{N+1},~~\lambda \in \Lambda_{N+1}(x).\, </math></td> | ||
+ | </tr> | ||
+ | </table> | ||
+ | |||
+ | |||
+ | これを後ろから逐次解き, 最後の <math>u_{1}(x_{1};\lambda_{1})\, </math> に <math>\lambda_{1} = \tilde{\lambda}\, </math> を代入すると求める最大値が得られる: <math>u_{1}(x_{1}) = u_{1}(x_{1};\tilde{\lambda}).\, </math> | ||
+ | |||
+ | また, [[非最適化]]問題としては, [[木の総容量]]など, 多重和 ([[多重和の解法]]) | ||
+ | |||
+ | <!-- | ||
+ | \begin{eqnarray} | ||
+ | {\rm S}_{1}(x_{1}):\hspace{-2.21mm}& & \sum | ||
+ | \hspace{0.3mm}\sum\hspace{0.3mm}\cdots\hspace{0.3mm}\sum | ||
+ | _{\hspace{-21.1mm}(x_{2}, x_{3}, \cdots , x_{N+1}) \in P_{1}(x_{1})} | ||
+ | \hspace{-1.9mm}\psi(g_{1}(x_{1},x_{2}) \circ \cdots \circ | ||
+ | g_{N}(x_{N},x_{N+1}) \circ k(x_{N+1}))\ \nonumber \\[2.34mm] | ||
+ | & & \hspace*{0.8mm}( P_{1}(x_{1}) := \{(x_{2}, \cdots , x_{N+1})\, |\, | ||
+ | x_{n+1} \in A_{n}(x_{n})~~1 \le n \le N \}) \nonumber | ||
+ | \end{eqnarray} | ||
+ | --> | ||
+ | |||
+ | <table align="center"> | ||
+ | <tr> | ||
+ | <td> <math>\mbox{S}_{1}(x_{1}):~~ {\sum \sum \cdots \sum} | ||
+ | _{(x_{2}, x_{3}, \cdots , x_{N+1}) \in P_{1}(x_{1})} | ||
+ | \psi(g_{1}(x_{1},x_{2}) \circ \cdots \circ | ||
+ | g_{N}(x_{N},x_{N+1}) \circ k(x_{N+1}))\, </math> | ||
+ | </td> | ||
+ | </tr> | ||
+ | <tr> | ||
+ | <td><math>(P_{1}(x_{1}) := \{(x_{2}, \cdots , x_{N+1})\, |\, | ||
+ | x_{n+1} \in A_{n}(x_{n})~~1 \le n \le N \})\, </math></td> | ||
+ | </tr> | ||
+ | </table> | ||
+ | |||
+ | |||
+ | を求める問題があって, やはりパラメータを含む埋め込みによって解くことができる. | ||
+ | |||
+ | このようなパラメータを導入した埋め込みは[[非可分性 (動的計画法における)|非可分性]]に起因し, [[単一評価系 (多段決定過程における)|単一評価系]], [[複合評価系 (多段決定過程における)|複合評価系]]の最適化, 期待値最適化, 多重和, 多重積分 ([[多重積分の解法]]) などで考えられる [2] [3]. 不変埋没原理は変数の離散と連続, システムの確定や確率やファジィ, 問題の最適と非最適を問わず, 歴史的には数学(微分方程式, 偏微分方程式の応用), 物理数学などで, また近年はコンピュータサイエンスで幅広く用いられている. | ||
+ | |||
+ | |||
+ | ---- | ||
+ | '''参考文献''' | ||
+ | |||
+ | [1] R. E. Bellman and E. D. Denman, ''Invariant Imbedding'', Lect. Notes in Operation Research and Mathematical Systems, Vol. 52, Springer-Verlag, Berlin, 1971. | ||
+ | |||
+ | [2] S. Iwamoto and T. Fujita, "Stochastic Decision-making in a Fuzzy Environment," ''Journal of the Operations Research Society of Japan'', '''38''' (1995), 467-482. | ||
+ | |||
+ | [3] 岩本誠一,「不変埋没によるファジィ動的計画法」, 日本オペレーションズ・リサーチ学会第33回シンポジウム, 25-33, 1995. | ||
+ | |||
+ | [4] E. S. Lee, ''Quasilinearization and Invariant Imbedding'', Academic Press, 1968. | ||
+ | |||
+ | [5] 相良節夫, 杉坂政典,「Invariant Imbedding について」,『システムと制御』, '''17''' (1973), 596-601. | ||
+ | |||
+ | |||
+ | [[Category:動的・確率・多目的計画|ふへんまいぼつげんり]] |
2008年3月23日 (日) 17:46時点における最新版
【ふへんまいぼつげんり (principle of invariant imbedding)】
概要
動的計画法の基本原理の1つ. ある問題を解こうとするとき, この問題を含む部分問題からなる群(族)を考える. これを「埋め込み」という. ただし, それぞれの問題の「構造」は不変である. このとき, 問題の大きさは小さいものから大きいものまであり, 「1番大きい」問題が与問題である. 相隣る問題間の関係式を導き, これを解くことによって, 与問題の「解」を求める. 埋め込み方に工夫を要する.
詳説
ある問題を解こうとするとき, この問題を含む部分問題からなる群(族)を考えることを「埋め込み」(imbedding)という. すなわち, 与問題をある問題群の1つと見做すことである. このとき, 問題の大きさは小さい(易しい)ものから大きい(難しい)ものまであり, 一番大きい(解きたい)問題が与問題である. しかし, 問題の「構造」は不変である. さらに, 相隣る問題間の関係式を導き, これを解くことによって, 与問題の「解」を求める. このような方法で解に至るまでを, 不変埋没原理 (principle of invariant imbedding)による方法という [1] [4] [5].
たとえば,「1から10までの自然数の和を求める」問題を考えてみよう. 以下ではいつも「1から」(前向きの方法で)考えることにして, この問題を で表わし, 「解」(この場合, 和)を としよう. このとき, 「1から までの自然数の和を求める」部分問題 からなる群 を考える. このこと自体が埋め込みである. 部分問題 の解(和)を とする. 最後の(一番大きい)問題 の解 が求める解である. このとき, 最初の (一番易しい) 問題の解は であり, 相隣る問題の解 と の間に漸化式
が成り立つ. 漸化式を の順に前向きに逐次解くことによって, を得る. 他方, 「 から(いつも!)10までの自然数の和を求める」部分問題 の族を考えても, 上述と同様に解くことができる. これを後向きの埋め込みという.
一般の問題では, どのような大きさの問題群に埋め込むか, 関係式が導けるか, 解けるか, 解き易いかなど, 埋め込み方に工夫を要する. たとえば, 多段階の最適化問題
の最大値 と最大点 を求めるには, 新たなパラメータ を含む部分問題群 :
に埋め込むと, パラメータ空間列 は前向きの再帰式
は結合演算の左単位元 |
で生成され, 最適値関数 は次の後向き再帰式を満たす:
これを後ろから逐次解き, 最後の に を代入すると求める最大値が得られる:
また, 非最適化問題としては, 木の総容量など, 多重和 (多重和の解法)
を求める問題があって, やはりパラメータを含む埋め込みによって解くことができる.
このようなパラメータを導入した埋め込みは非可分性に起因し, 単一評価系, 複合評価系の最適化, 期待値最適化, 多重和, 多重積分 (多重積分の解法) などで考えられる [2] [3]. 不変埋没原理は変数の離散と連続, システムの確定や確率やファジィ, 問題の最適と非最適を問わず, 歴史的には数学(微分方程式, 偏微分方程式の応用), 物理数学などで, また近年はコンピュータサイエンスで幅広く用いられている.
参考文献
[1] R. E. Bellman and E. D. Denman, Invariant Imbedding, Lect. Notes in Operation Research and Mathematical Systems, Vol. 52, Springer-Verlag, Berlin, 1971.
[2] S. Iwamoto and T. Fujita, "Stochastic Decision-making in a Fuzzy Environment," Journal of the Operations Research Society of Japan, 38 (1995), 467-482.
[3] 岩本誠一,「不変埋没によるファジィ動的計画法」, 日本オペレーションズ・リサーチ学会第33回シンポジウム, 25-33, 1995.
[4] E. S. Lee, Quasilinearization and Invariant Imbedding, Academic Press, 1968.
[5] 相良節夫, 杉坂政典,「Invariant Imbedding について」,『システムと制御』, 17 (1973), 596-601.